Gearswap Support Thread

Language: JP EN DE FR
New Items
2018-04-04
331 users online
Forum » Windower » Support » Gearswap Support Thread
Gearswap Support Thread
First Page 2 3 ... 133 134
Offline
Posts: 14349
By eslim 2018-04-10 19:59:47
Link | Quote | Reply
 
is there a way for gearswap to identify if 3 runes are buffactive or not ?
i wanna setup a rune autobuff toggle that i can shortcut into action but idk how to code 3 of the same runes in gearswap.

thanks for any support.
 Asura.Chiaia
Offline
Server: Asura
Game: FFXI
user: Demmis
Posts: 764
By Asura.Chiaia 2018-04-10 20:05:32
Link | Quote | Reply
 
something like this should work

if buffactive.gelus == 3 then
Offline
Posts: 14349
By eslim 2018-04-10 20:11:38
Link | Quote | Reply
 
derp lol.. ty
 Asura.Summerl
Offline
Server: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 10:05:36
Link | Quote | Reply
 
Hi all:

Trying to get this enmity button rule on my RUN gearswap to work so I can consolidate my enmity spells on BLU SJ to 2 keys. For some reason that I can't understand, the rule doesn't seem to work. The lua loads fine otherwise and functions without issue, but the intended idea of being able to hit my Jettatura macro and trigger Blitzstrahl (or Blank Gaze) when it's on cool down doesn't seem to happen. Any ideas?

What I believe is all the relevant code for BLU SJ in my RUN lua below.
Code

function job_setup()
 -- /BLU Spell Maps
blue_magic_maps = {}
blue_magic_maps.Enmity = S{'Blank Gaze', 'Geist Wall', 'Jettatura', 'Soporific', 'Poison Breath', 'Blitzstrahl', 'Sheep Song', 'Chaotic Eye'}
blue_magic_maps.Cure = S{'Wild Carrot'}
blue_magic_maps.Buffs = S{'Cocoon', 'Refueling'}
rayke_duration = 47
gambit_duration = 96
end

function init_gear_sets()

sets.midcast['Blue Magic'] = {}
sets.midcast['Blue Magic'].Enmity = sets.Enmity
sets.midcast['Blue Magic'].Cure = sets.midcast.Cure
sets.midcast['Blue Magic'].Buff = sets.midcast['Enhancing Magic']

end

function job_pretarget(spell, action, spellMap, eventArgs)
	if spell.english == "Jettatura" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Blitzstrahl')
	end
	if spell.english == "Blitzstrahl" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Chaotic Eye')
	end
	if spell.english == "Chaotic Eye" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Poison Breath')
	end
	if spell.english == "Poison Breath" and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Blank Gaze')
	end
	if spell.english == "Sheep Song" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Geist Wall')
	end
	if spell.english == "Geist Wall" and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		send_command('Soporific')
	end
	if spell.type == 'JobAbility' and windower.ffxi.get_ability_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		return
	end
	if spell.action_type == 'Magic' and windower.ffxi.get_spell_recasts()[spell.recast_id] > 0 then
		cancel_spell()
		return
        end
end

function job_get_spell_map(spell, default_spell_map)
    if spell.skill == 'Blue Magic' then
        for category,spell_list in pairs(blue_magic_maps) do
            if spell_list:contains(spell.english) then
                return category
            end
        end
    end
end

 Ragnarok.Martel
Offline
Server: Ragnarok
Game: FFXI
Posts: 1810
By Ragnarok.Martel 2018-04-11 10:33:12
Link | Quote | Reply
 
You're using Chaotic eye, Poison breath, and blitztrahl as enmity spells? .... Why? Those are all terrible enmity spells.

Chaotic eye is 320 VE, 1 CE. Yes, it's cheap and has a low recast. But so does blank gaze. And Blank gaze is 320VE/320CE. With any reasonable amount of haste you should be able to push Blank Gaze recast down below the 3 second global recast cap and just spam blank gaze alone, tossing in the occasional Jettatura. (and of course the usual flash/foil)

Poison breath might have been appealing as an enmity spell at 75. Assuming it didn't get resisted to hell. But damage enmity has been nerfed no less than 3 times since then(was maybe a fourth..?) so to get significant enmity out of dealing damage, you need to be dealing A LOT of dmg. Poison breath is not going to do that.

Blitzstrahl is in the same boat. Except I don't think it has ever been a good enmity spell.
 Asura.Summerl
Offline
Server: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 10:42:34
Link | Quote | Reply
 
That's good to know, I can swap those out for something else (stinking gas I'm guessing)

Still doesn't really solve the issue I'm having with the rule itself though.
 Ragnarok.Martel
Offline
Server: Ragnarok
Game: FFXI
Posts: 1810
By Ragnarok.Martel 2018-04-11 11:17:35
Link | Quote | Reply
 
Well, I wasn't trying to fix your GS issue with that post. If you hadn't been using some really weird spells for enmity I wouldn't have posted at all.

While, I see some possible inefficiencies in that rule, I haven't been able to pinpoint where the actual failure is. And I'm not subbed atm, so I can't test anything right now. So I only posted about the spell oddity.

The only thing I could think of atm would be that if you don't use shortcuts then sending a command that's just a spell name would probably just throw an error, or do nothing.

And yes, stinking gas would be a decent enmity spell. 320/320 CE/VE. Cast time is slightly slower than most, but the cost and recast are reasonable.
 Asura.Summerl
Offline
Server: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 12:08:45
Link | Quote | Reply
 
Quote:
The only thing I could think of atm would be that if you don't use shortcuts then sending a command that's just a spell name would probably just throw an error, or do nothing.

This is likely the issue actually. I don't normally use that add on, and the code above is a copy paste of another lua with some edits made on my part. I'll either load shortcuts or rewrite the function when I have a chance. Thanks for your help.

Also, while attempting to make full use of your allotted blue magic points, what would you recommend be set for tank SJs?

I'm assuming I should sub out Blitstrahl, Chaotic Eye, and Poison breath (7 points opened) and sub in Stinking Gas and Diamondhide (5 points used)

Any recommendations for those last two points.
 Ragnarok.Martel
Offline
Server: Ragnarok
Game: FFXI
Posts: 1810
By Ragnarok.Martel 2018-04-11 13:26:29
Link | Quote | Reply
 
Well, for starters Diamondhide is a lvl 67 spell. So if this is for /blu, that's not gonna be usable.

Did you mean metallic body? If so skip that. It's totally useless. With subbed and merits BLU skill, you'd get a 74 dmg SS. And SS+ gear doesn't work on it. It's part of the max MP boost trait along with Mysterious light. But ML is equally useless, and costs 4 set points. All for 10 MP.

That said, I can't actually recall my exact /BLU spell set. It doesn't change much.

Basically my process is, enmity spells, utility spells, then stats(basically just HP+ stuff)

I think we've covered enmity spells already, so. Examples of utility spells.
Cocoon, of course,
Wild carrot. At least you have a cure now, even if it's a crappy one.
Healing breeze. Pretty much only good for waking the group after an AoE sleep.
Refueling. Almost useless now. 10% haste buff. Can be nice if your mages are lazy gits, or you somehow find yourself solo without trusts.

Trait wise... there's not much to be had.
Killer traits(Beast/Lizard/Undead)
Defense bonus(weee +10 def)
Resist sleep(this is actually decent. 10% resist rate, for 4 total set points. And you'd probably have wild carrot set anyway.) Not that being slept is a huge deal, but it's a thing.
Magic attack bonus(I dunno, lunge harder?)

Any points that are left I just set any HP+ spells that will fit.
 Asura.Dagget
Offline
Server: Asura
Game: FFXI
Posts: 58
By Asura.Dagget 2018-04-14 17:43:30
Link | Quote | Reply
 
Looking for some help with my PUP lua.
Code
function check_maneuver()
	if state.AutoBuffMode.value and pet.isvalid and pet.status == 'Engaged' and windower.ffxi.get_ability_recasts()[210] == 0 then
		if not buffactive[defaultManeuvers[state.PetMode.value][1]] then
			windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][1]..' <me>')
			tickdelay = 30
			return true
		elseif not buffactive[defaultManeuvers[state.PetMode.value][2]] then
			windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][2]..' <me>')
			tickdelay = 30
			return true
		elseif not buffactive[defaultManeuvers[state.PetMode.value][3]] then
			windower.chat.input('/pet '..defaultManeuvers[state.PetMode.value][3]..' <me>')
			tickdelay = 30
			return true
		end
	end


Im trying to have my maneuvers sets to Fire/Fire/Light, but as I can understand in the above code it wont do a double Fire because it checks it as active already and moves on. Is they any way anyone can write or knows of how to change this so I can have two of the same maneuvers up at the same time?

This is Selinedrile lua file setup Im working from.
Offline
Posts: 100
By aisukage 2018-04-16 22:50:34
Link | Quote | Reply
 
Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them.
 Quetzalcoatl.Langly
Offline
Server: Quetzalcoatl
Game: FFXI
user: Langly
Posts: 459
By Quetzalcoatl.Langly 2018-04-16 23:00:06
Link | Quote | Reply
 
aisukage said: »
Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them.

If using Mote's libraries:

Directly within the selfCommands.lua are a few controls.
-- Function to set various states to specific values directly.
-- User command format: gs c set [field] [value]
-- If a boolean [field] is used, but not given a [value], it will be set to true.
Offline
Posts: 100
By aisukage 2018-04-16 23:09:03
Link | Quote | Reply
 
Quetzalcoatl.Langly said: »
aisukage said: »
Anyone able to help with a command that i can make a key bind, to change my offense mode directly to the specific one rather than cycle through them.

If using Mote's libraries:

Directly within the selfCommands.lua are a few controls.
-- Function to set various states to specific values directly.
-- User command format: gs c set [field] [value]
-- If a boolean [field] is used, but not given a [value], it will be set to true.

Yeah I'm using Mote's i'm not too bad with LUA's but i don't know all these commands so i tried something along the lines of
Code
send_command('bind !n gs c state.OffenseMode = "DT"')


So would this look more accurate then?
Code
send_command('bind !n gs c set state.OffenseMode "DT"')


EDIT: Nvm i got it working removed the "state." from that line and it worked
Code
send_command('bind !n gs c set OffenseMode "DT"')


Many Thanks
[+]
 Cerberus.Quintow
Offline
Server: Cerberus
Game: FFXI
user: Quintow
Posts: 140
By Cerberus.Quintow 2018-04-22 10:26:38
Link | Quote | Reply
 
Using motes. I basically copy/pasted the default online THF version and substituted some of my equips in the appropriate places.
A couple questions though. Why are some WS listed as 'WS' and some as "WS"? Second, I'm trying to check my gearsets from town using //gs equip and possibly related to the ' vs. the " I can only successfully do //gs equip sets.precast.WS from town. However, what I want to see is the Rudra's version of equip sets
in specific. What is the syntax to type it in and what am I doing wrong?

I've tried //gs equip sets.precast.["Rudra's Storm"]WS
also used ' and even tried [Rudra's Storm]. I do not get any errors, but nothing happens! My Yetshila does not equip!

In specific I'm trying to make sure my swaps are happening not only for WS-specific but for SA stacked.

Code
        -- Default set for any weaponskill that isn't any more specifically defined
    sets.precast.WS = {ammo="Seeth. Bomblet +1",
        head="Adhemar Bonnet",neck="Fotia Gorget",ear1="Sherida Earring",ear2="Moonshade Earring",
        body="Meg. Cuirie +1",hands="Meg. Gloves +2",ring1="Apate Ring",ring2="Epona's Ring",
        back="Toutatis's Cape",waist="Fotia Belt",legs="Samnuha Tights",feet="Meg. Jam. +1"}
    sets.precast.WS.Acc = set_combine(sets.precast.WS, {ammo="Honed Tathlum", back="Letalis Mantle"})

    -- Specific weaponskill sets.  Uses the base set if an appropriate WSMod version isn't found.
    sets.precast.WS['Exenterator'] = set_combine(sets.precast.WS, {head="Uk'uxkaj Cap",ring1="Stormsoul Ring"})
    sets.precast.WS['Exenterator'].Acc = set_combine(sets.precast.WS['Exenterator'], {ammo="Honed Tathlum", back="Letalis Mantle"})
    sets.precast.WS['Exenterator'].Mod = set_combine(sets.precast.WS['Exenterator'], {head="Felistris Mask",waist="Fotia Belt"})
    sets.precast.WS['Exenterator'].SA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"})
    sets.precast.WS['Exenterator'].TA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"})
    sets.precast.WS['Exenterator'].SATA = set_combine(sets.precast.WS['Exenterator'].Mod, {ammo="Qirmiz Tathlum"})

    sets.precast.WS["Rudra's Storm"] = set_combine(sets.precast.WS, {ammo="Yetshila"})
    sets.precast.WS["Rudra's Storm"].Acc = set_combine(sets.precast.WS["Rudra's Storm"], {})
    sets.precast.WS["Rudra's Storm"].Mod = set_combine(sets.precast.WS["Rudra's Storm"], {})
    sets.precast.WS["Rudra's Storm"].SA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Yetshila"})
    sets.precast.WS["Rudra's Storm"].TA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Qirmiz Tathlum",
        body="Pillager's Vest +1",legs="Pillager's Culottes +1"})
    sets.precast.WS["Rudra's Storm"].SATA = set_combine(sets.precast.WS["Rudra's Storm"].Mod, {ammo="Qirmiz Tathlum",
        body="Pillager's Vest +1",legs="Pillager's Culottes +1"})
 Cerberus.Dougg
Offline
Server: Cerberus
Game: FFXI
user: Dougg
Posts: 3
By Cerberus.Dougg 2018-04-22 11:03:03
Link | Quote | Reply
 
" are used on names with a ' already in them. Otherwise it'd have to be something like ['Rudra\'s Storm'].

//gs equip sets.precast.WS.Rudra's Storm should work
 Asura.Chiaia
Offline
Server: Asura
Game: FFXI
user: Demmis
Posts: 764
By Asura.Chiaia 2018-04-22 11:04:48
Link | Quote | Reply
 
' vs " Doesn't mean much but if you did 'Rudra's Storm' it would fail because it needs the middle ' escaped so that it knows to read it as just a regular character and not part of the language.

'Rudra\'s Storm' you escape characters in lua with \ before it

try

//gs equip sets.precast.WS.Rudra's Storm.TA

While that won't work when writing the lua it should work when trying to manually equip it

also can do //gs showswaps
 Cerberus.Quintow
Offline
Server: Cerberus
Game: FFXI
user: Quintow
Posts: 140
By Cerberus.Quintow 2018-04-22 11:06:33
Link | Quote | Reply
 
That's working perfect already, thanks Dougg. Syntax is very new to me, not a programmer. About the " vs ' I was unsure because in default THF for example the Shark Bite had a "" also

https://github.com/Kinematics/GearSwap-Jobs/blob/master/THF.lua
 Odin.Archaide
Offline
Server: Odin
Game: FFXI
user: Archaide
Posts: 4
By Odin.Archaide 2018-04-22 14:18:35
Link | Quote | Reply
 
Can anyone figure out why after I WS it won't swap back to my melee set? I have to hit the Gear Update Toggle every time.
Code
function get_sets()
StartLockStyle = '97'
AccIndex = 1
AccArray = {"LowACC","MidACC","HighACC",}
IdleIndex = 3
IdleArray = {'Movement','Regen','Town'}				-- Default Idle Set Is Movement --
PreshotIndex = 1
PreshotArray = {'Any','RDM'}
Armor = 'None'
autoRAmode = 0
target_distance = 5 -- Set Default Distance Here --

send_command('input /macro book 3;wait .1;input /macro set 1') -- Change Default Macro Book Here --
send_command('bind F9 gs c flur') --flurry toggle--
send_command('bind F10 gs c pdt') --PDT toggle--
send_command('bind F11 gs c acc') --accuracy toggle--
send_command('bind F12 gs c auto') --Gearset update toggle--
send_command('bind !F12 gs c C6') --Idle Toggle--
send_command('bind != gs c mdt') --MDT toggle--

ranged_ws = S{

    "Hot Shot","Split Shot","Sniper Shot","Slug Shot","Blast Shot","Heavy Shot","Detonator",

    "Numbing Shot","Last Stand","Coronach","Trueflight","Wildfire","Flaming Arrow",

    "Piercing Arrow","Dulling Arrow","Sidewinder","Blast Arrow","Arching Arrow",

    "Empyreal Arrow","Refulgent Arrow","Apex Arrow","Jishnu's Radiance","Namas Arrow"}

-- Idle/Town Sets --
sets.Idle = {}

sets.Idle.Regen = {
		head="Meghanada Visor +2",
		body="Meg. Cuirie +2",
		hands="Meg. Gloves +2",
		legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}},
		feet="Meg. Jam. +2",
		neck="Bathy Choker +1",
		waist="Flume Belt +1",
		left_ear="Telos Earring",
		right_ear="Etiolation Earring",
		left_ring="Meghanada Ring",
		right_ring="Chirich Ring",
		back="Moonbeam Cape",}

sets.Idle.Movement = set_combine(sets.Idle.Regen,{})

sets.Idle.Town = {
		head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}},
		body="Mummu Jacket +2",
		hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

sets.Fomalhaut = {
		main="Perun +1",
		sub="Nusku Shield",
		range="Fomalhaut",
		ammo="Chrono Bullet"}

sets.Annihilator = {
		main="Perun +1",
		sub="Nusku Shield",
		range="Annihilator",
		ammo="Eradicating Bullet"}

sets.Gastraphetes = {
		main={ name="Malevolence", augments={'INT+7','"Mag.Atk.Bns."+5','"Fast Cast"+3',}},
		sub={ name="Malevolence", augments={'INT+2','Mag. Acc.+1','"Mag.Atk.Bns."+3','"Fast Cast"+1',}},
		range="Gastraphetes",
		ammo="Crossbow Bolt"}
		
-- Preshot --

sets.Preshot = {
		ammo="Eradicating Bullet",
		head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0
		body="Oshosi Vest", -- 12/0
		hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11
		legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10
		feet="Meg. Jam. +2", -- 10/0
		waist="Yemaya Belt", -- 0/5
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0
		-- 69 SS/ 61 RS
			
-- Fomalhaut Preshot --

sets.Preshot.Fomalhaut = {
		ammo="Eradicating Bullet",
		head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0
		body="Oshosi Vest", -- 12/0
		hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11
		legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10
		feet="Meg. Jam. +2", -- 10/0
		waist="Yemaya Belt", -- 0/5
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0
		-- 69 SS/ 61 RS

sets.Preshot.Fomalhaut.Any = set_combine(sets.Preshot.Fomalhaut,{
		body="Amini Caban +1"}) -- 0/0
		-- 57 SS/ 61 RS

sets.Preshot.Fomalhaut.RDM = set_combine(sets.Preshot.Fomalhaut.Any,{
		head="Orion Beret +3", -- 0/18
		waist="Impulse Belt", -- 3/0
		feet="Pursuer's Gaiters"}) -- 0/10
		-- 40 SS/ 89 RS

-- Annihilator Preshot --

sets.Preshot.Annihilator = { 
		ammo="Eradicating Bullet",
		head={ name="Taeon Chapeau", augments={'"Snapshot"+5','"Snapshot"+5',}}, -- 10/0
		body="Oshosi Vest", -- 12/0
		hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11
		legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10
		feet="Meg. Jam. +2", -- 10/0
		waist="Yemaya Belt", -- 0/5
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0
		-- 69 SS/ 61 RS

sets.Preshot.Annihilator.Any = set_combine(sets.Preshot.Annihilator,{
		body="Amini Caban +1"}) -- 0/0
		-- 57 SS/ 61 RS

sets.Preshot.Annihilator.RDM = set_combine(sets.Preshot.Annihilator.Any,{
		head="Orion Beret +3", -- 0/18
		waist="Impulse Belt", -- 3/0
		feet="Pursuer's Gaiters"}) -- 0/10
		-- 40 SS/ 89 RS

-- Gastraphetes Preshot --		
		
sets.Preshot.Gastraphetes = {
		head="Orion Beret +3", -- 0/18
		body="Oshosi Vest", -- 12/0
		hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}}, -- 8/11
		legs={ name="Adhemar Kecks", augments={'AGI+10','"Rapid Shot"+10','Enmity-5',}}, -- 9/10
		feet="Meg. Jam. +2", -- 10/0
		waist="Yemaya Belt", -- 0/5
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Snapshot"+10',}},} -- 10/0
		-- 69 SS/ 79 RS

sets.Preshot.Gastraphetes.Any = set_combine(sets.Preshot.Gastraphetes,{
		body="Amini Caban +1"}) -- 0/0
		-- 57 SS/ 79 RS

sets.Preshot.Gastraphetes.RDM = set_combine(sets.Preshot.Gastraphetes.Any,{
		waist="Impulse Belt", -- 3/0
		feet="Pursuer's Gaiters"}) -- 0/10
		-- 40 SS/ 84 RS	

-- Midshot Base Set --

sets.Midshot = {
		head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}},
		body="Orion Jerkin +3",
		hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}},
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

sets.Midshot.MidACC = set_combine(sets.Midshot,{
		right_ear="Enervating Earring",
	    left_ring="Regal Ring",
		right_ring="Hajduk Ring +1"})

sets.Midshot.HighACC = set_combine(sets.Midshot.MidACC,{
		feet="Orion Socks +3"})

-- Fomalhaut Midshot --

sets.Midshot.Fomalhaut = {
		head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}},
		body="Orion Jerkin +3",
		hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}},
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

sets.Midshot.Fomalhaut.MidACC = set_combine(sets.Midshot.Fomalhaut,{
		right_ear="Enervating Earring",
	    left_ring="Regal Ring",
		right_ring="Hajduk Ring +1"})

sets.Midshot.Fomalhaut.HighACC = set_combine(sets.Midshot.Fomalhaut.MidACC,{
		feet="Orion Socks +3"})

-- Annihilator Sets --

sets.Midshot.Annihilator = {
		head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}},
		body="Mummu Jacket +2",
		hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}},
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}
		-- Perun+1 / Nusku Shield --
		-- 1420 RACC / 1562 RATTK / 75 STP / 24% crit -- /WAR --
		
sets.Midshot.Annihilator.MidACC = set_combine(sets.Midshot.Annihilator,{
		right_ear="Enervating Earring",
		right_ring="Hajduk Ring +1"})
		-- Perun+1 / Nusku Shield --
		-- 1447 RACC / 1553 RATTK / 71 STP / 24% crit -- /WAR --
		
sets.Midshot.Annihilator.HighACC = set_combine(sets.Midshot.Annihilator.MidACC,{
		body="Orion Jerkin +3",
		feet="Oshosi Leggings",
		left_ring="Regal Ring",})
		-- Perun+1 / Nusku Shield --
		-- 1512 RACC / 1603 RATTK / 61 STP / 19% crit -- /WAR --

-- Gastraphetes Sets --

sets.Midshot.Gastraphetes = {
		head={ name="Arcadian Beret +3", augments={'Enhances "Recycle" effect',}},
		body="Mummu Jacket +2",
		hands={ name="Adhemar Wrist. +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet={ name="Adhe. Gamashes +1", augments={'HP+65','"Store TP"+7','"Snapshot"+10',}},
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}
		-- Malevolence / Malevolence --
		-- 1349 RACC / 1483 RATTK / 75 STP -- /DNC --

sets.Midshot.Gastraphetes.MidACC = set_combine(sets.Midshot.Gastraphetes,{
		right_ear="Enervating Earring",
		right_ring="Hajduk Ring +1"})
		-- Malevolence / Malevolence --
		-- 1391 RACC / 1506 RATTK / 66 STP -- /DNC --

sets.Midshot.Gastraphetes.HighACC = set_combine(sets.Midshot.Gastraphetes.MidACC,{
		body="Orion Jerkin +3",
		feet="Orion Socks +3",
		left_ring="Regal Ring",})
		-- Malevolence / Malevolence --
		-- 1465 RACC / 1514 RATTK / 59 STP -- /DNC --

-- Barrage Base Set --

Barrage = {
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

-- Fomalhaut Barrage Sets --

sets.Midshot.Fomalhaut.Barrage = set_combine(sets.Midshot.Fomalhaut, {
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})

sets.Midshot.Fomalhaut.MidACC.Barrage = set_combine(sets.Midshot.Fomalhaut.Barrage,{})

sets.Midshot.Fomalhaut.HighACC.Barrage = set_combine(sets.Midshot.Fomalhaut.Barrage,{})

-- Annihilator Barrage Sets --

sets.Midshot.Annihilator.Barrage = set_combine(sets.Midshot.Annihilator,{
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})
		-- Perun+1 / Nusku Shield --
		-- 1622 RACC / 1597 RATTK / 11 shots -- /WAR --

sets.Midshot.Annihilator.MidACC.Barrage = set_combine(sets.Midshot.Annihilator.Barrage,{})

sets.Midshot.Annihilator.HighACC.Barrage = set_combine(sets.Midshot.Annihilator.Barrage,{})

--Gastraphetes Barrage Sets --

sets.Midshot.Gastraphetes.Barrage = set_combine(sets.Midshot.Gastraphetes, {
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})
		-- Malevolence / Malevolence --
		-- 1554 RACC / 1487 RATTK / 12 shots -- /DNC --

sets.Midshot.Gastraphetes.MidACC.Barrage = set_combine(sets.Midshot.Gastraphetes.Barrage,{})

sets.Midshot.Gastraphetes.HighACC.Barrage = set_combine(sets.Midshot.Gastraphetes.Barrage,{})

-- Doubleshot Sets --

sets.Doubleshot = {
		head="Oshosi Mask",
		body="Oshosi Vest",
		hands="Oshosi Gloves",
		legs="Oshosi Trousers",
		feet="Oshosi Leggings",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

-- Fomalhaut Doubleshot Sets --

sets.Midshot.Fomalhaut.Doubleshot = set_combine(sets.Midshot.Fomalhaut,{
		head="Oshosi Mask",
		body="Oshosi Vest",
		hands="Oshosi Gloves",
		legs="Oshosi Trousers",
		feet="Oshosi Leggings",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})

sets.Midshot.Fomalhaut.MidACC.Doubleshot = set_combine(sets.Midshot.Fomalhaut.Doubleshot,{
		right_ear="Enervating Earring",
		left_ring="Hajduk Ring +1",
		right_ring="Hajduk Ring +1",})

sets.Midshot.Fomalhaut.HighACC.Doubleshot = set_combine(sets.Midshot.Fomalhaut.Doubleshot,{})

--Annihilator Doubleshot Sets--

sets.Midshot.Annihilator.Doubleshot = set_combine(sets.Midshot.Annihilator,{
		head="Oshosi Mask",
		body="Oshosi Vest",
		hands="Oshosi Gloves",
		legs="Oshosi Trousers",
		feet="Oshosi Leggings",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})
		-- Perun+1 / Nusku Shield --
		-- 1397 RACC / 1423 RATTK / 85 DS / 54 STP -- /WAR --

sets.Midshot.Annihilator.MidACC.Doubleshot = set_combine(sets.Midshot.Annihilator.Doubleshot,{
		right_ear="Enervating Earring",
		left_ring="Hajduk Ring +1",
		right_ring="Hajduk Ring +1",})
		-- Perun+1 / Nusku Shield --
		-- 1433 RACC / 1414 RATTK / 85 DS / 40 STP -- /WAR --

sets.Midshot.Annihilator.HighACC.Doubleshot = set_combine(sets.Midshot.Annihilator.Doubleshot,{})

 --Gastraphetes Doubleshot Sets--

 sets.Midshot.Gastraphetes.Doubleshot = set_combine(sets.Midshot.Gastraphetes,{
		head="Oshosi Mask",
		body="Oshosi Vest",
		hands="Oshosi Gloves",
		legs="Oshosi Trousers",
		feet="Oshosi Leggings",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Dedition Earring",
		left_ring="Ilabrat Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},})

sets.Midshot.Gastraphetes.MidACC.Doubleshot = set_combine(sets.Midshot.Gastraphetes.Doubleshot,{
		right_ear="Enervating Earring",
		left_ring="Hajduk Ring +1",
		right_ring="Hajduk Ring +1",})

sets.Midshot.Gastraphetes.HighACC.Doubleshot = set_combine(sets.Midshot.Gastraphetes.Doubleshot,{})	   

--Camouflage Sets--

sets.Midshot.Camouflage = {}			 
			   
sets.Midshot.Fomalhaut.Camouflage = {
		head="Meghanada Visor +2",
		neck="Iskur Gorget",
		ear1="Enervating Earring",
		body="Meghanada Cuirie +2",
		hands="Mummu Wrists +2",
		ring1="Begrudging Ring",
		ring2="Mummu Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}},
		waist="Kwahu Kachina Belt",
		legs="Darraigner's Brais",
		feet="Thereoid Greaves"}
			   
sets.Midshot.Annihilator.Camouflage = {
		head="Meghanada Visor +2",
		neck="Iskur Gorget",
		ear1="Enervating Earring",
		body="Meghanada Cuirie +2",
		hands="Mummu Wrists +2",
		ring1="Begrudging Ring",
		ring2="Mummu Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}},
		waist="Kwahu Kachina Belt",
		legs="Darraigner's Brais",
		feet="Thereoid Greaves"}

sets.Midshot.Gastraphetes.Camouflage = {
		head="Meghanada Visor +2",
		neck="Iskur Gorget",
		ear1="Enervating Earring",
		body="Meghanada Cuirie +2",
		hands="Mummu Wrists +2",
		ring1="Begrudging Ring",
		ring2="Mummu Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','Crit.hit rate+10',}},
		waist="Kwahu Kachina Belt",
		legs="Darraigner's Brais",
		feet="Thereoid Greaves"}
				
-- PDT/MDT Sets --

sets.PDT = {
		head="Meghanada Visor +2",
		body="Meg. Cuirie +2",
		hands="Meg. Gloves +2",
		legs={ name="Carmine Cuisses +1", augments={'Accuracy+20','Attack+12','"Dual Wield"+6',}},
		feet="Meg. Jam. +2",
		neck="Loricate Torque +1",
		waist="Flume Belt +1",
		left_ear="Odnowa Earring +1",
		right_ear="Etiolation Earring",
		left_ring="Meghanada Ring",
		right_ring="Defending Ring",
		back="Moonbeam Cape",}

sets.MDT = set_combine(sets.PDT,{})
         
-- Melee Sets --

sets.Melee = {
		head={ name="Dampening Tam", augments={'DEX+10','Accuracy+15','Mag. Acc.+15','Quadruple Attack +3',}},
		body={ name="Adhemar Jacket +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
		hands={ name="Adhemar Wrist. +1", augments={'DEX+12','AGI+12','Accuracy+20',}},
		legs={ name="Samnuha Tights", augments={'STR+10','DEX+10','"Dbl.Atk."+3','"Triple Atk."+3',}},
		feet={ name="Herculean Boots", augments={'Accuracy+16','"Triple Atk."+4','Attack+6',}},
		neck="Lissome Necklace",
		waist="Kentarch Belt +1",
		left_ear="Sherida Earring",
		right_ear="Cessance Earring",
		left_ring="Epona's Ring",
		right_ring="Ilabrat Ring",
		back={ name="Belenus's Cape", augments={'DEX+20','Accuracy+20 Attack+20','"Dual Wield"+10',}},}

sets.Melee.MidACC = set_combine(sets.Melee,{
		legs="Meg. Chausses +2",
		left_ring="Chirich Ring"})

sets.Melee.HighACC = set_combine(sets.Melee.MidACC,{
		feet="Meg. Jam. +2",
		left_ear="Telos Earring"})

-- WS Base Set --

sets.WS = {
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}},
		hands="Meg. Gloves +2",
		legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}},
		feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}},
		neck="Fotia Gorget",
		waist="Fotia Belt",
		left_ear="Ishvara Earring",
		right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
		left_ring="Regal Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},}

-- WS Sets --

-- Last Stand --

sets.WS['Last Stand'] = set_combine(sets.WS, {
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}},
		hands="Meg. Gloves +2",
		legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}},
		feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}},
		neck="Fotia Gorget",
		waist="Fotia Belt",
		left_ear="Ishvara Earring",
		right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
		left_ring="Regal Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},})

sets.WS['Last Stand'].MidACC = set_combine(sets.WS["Last Stand"],{})

sets.WS['Last Stand'].HighACC = set_combine(sets.WS["Last Stand"].MidACC,{})

-- Coronach --

sets.WS['Coronach'] = set_combine(sets.WS, {
		ammo="Eradicating Bullet",
		head="Orion Beret +3",
		body={ name="Herculean Vest", augments={'Rng.Atk.+19','Weapon skill damage +5%','CHR+6','Rng.Acc.+14',}},
		hands="Meg. Gloves +2",
		legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}},
		feet={ name="Herculean Boots", augments={'Rng.Acc.+29','Weapon skill damage +5%','AGI+4','Rng.Atk.+9',}},
		neck="Fotia Gorget",
		waist="Fotia Belt",
		left_ear="Ishvara Earring",
		right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
		left_ring="Regal Ring",
		right_ring="Ilabrat Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},})

sets.WS['Coronach'].MidACC = set_combine(sets.WS['Coronach'].MidACC,{})

sets.WS['Coronach'].HighACC = set_combine(sets.WS['Coronach'].HighACC,{})
				
-- Trueflight --

sets.WS['Trueflight'] = {
		head="Orion Beret +3",
		body={ name="Herculean Vest", augments={'"Mag.Atk.Bns."+28','Pet: Attack+24 Pet: Rng.Atk.+24','Weapon skill damage +3%','Accuracy+19 Attack+19','Mag. Acc.+10 "Mag.Atk.Bns."+10',}},
		hands={ name="Carmine Fin. Ga. +1", augments={'Rng.Atk.+20','"Mag.Atk.Bns."+12','"Store TP"+6',}},
		legs={ name="Herculean Trousers", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Enmity-5','MND+2','"Mag.Atk.Bns."+14',}},
		feet={ name="Herculean Boots", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','MND+5','Mag. Acc.+1','"Mag.Atk.Bns."+14',}},
		neck="Sanctity Necklace",
		waist="Eschan Stone",
		left_ear="Friomisi Earring",
		right_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +25',}},
		left_ring="Weather. Ring",
		right_ring="Dingir Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},}

sets.WS['Trueflight'].MidACC = set_combine(sets.WS["Trueflight"],{})

sets.WS['Trueflight'].HighACC = set_combine(sets.WS["Trueflight"].MidACC,{})

-- Wildfire --

sets.WS['Wildfire'] = set_combine(sets.WS["Trueflight"],{
		left_ring="Regal Ring",})

sets.WS['Wildfire'].MidACC = set_combine(sets.WS["Trueflight"].MidACC,{})

sets.WS['Wildfire'].HighACC = set_combine(sets.WS["Trueflight"].HighACC,{})
		
-- Hotshot --

sets.WS['Hot Shot'] = set_combine(sets.WS["Trueflight"],{
		neck="Fotia Gorget",
		waist="Fotia Belt",
		left_ring="Regal Ring",})

sets.WS['Hot Shot'].MidACC = set_combine(sets.WS['Hot Shot'],{})

sets.WS['Hot Shot'].HighACC = set_combine(sets.WS['Hot Shot'].MidACC,{})

-- Dagger Weapon Skills --

sets.WS['Exenterator'] = {
		head="Adhemar Bonnet",
		neck="Fotia Gorget",
		ear1="Infused Earring",
		ear2="Digni. Earring",
		body="Meg. Cuirie +2",
		hands="Mummu Wrists +2",
		ring1="Ilabrat Ring",
		ring2="Regal Ring",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','AGI+10','Weapon skill damage +10%',}},
		waist="Fotia Belt",
		legs="Jokushu Haidate",
		feet="Thereoid Greaves"}

sets.WS['Evisceration'] = sets.WS['Exenterator']

sets.WS['Aeolian Edge'] = sets.WS['Hot Shot']
				              
-- JA Sets --

sets.JA = {}

sets.JA.Shadowbind = {
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Adhemar Kecks +1", augments={'AGI+12','Rng.Acc.+20','Rng.Atk.+20',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

sets.JA.Scavenge = {feet="Orion Socks +3"}

sets.JA.Camouflage = {body="Orion Jerkin +3"}

sets.JA.Sharpshot = {legs="Orion Braccae +2"}

sets.JA["Bounty Shot"] = {
		hands="Amini Glove. +1",
		legs={ name="Herculean Trousers", augments={'"Mag.Atk.Bns."+12','"Treasure Hunter"+1','Mag. Acc.+12 "Mag.Atk.Bns."+12',}},}

sets.JA["Double Shot"] = {head="Amini Gapette +1"}

sets.JA["Eagle Eye Shot"] = {
		head="Orion Beret +3",
		body="Orion Jerkin +3",
		hands="Orion Bracers +3",
		legs={ name="Arc. Braccae +3", augments={'Enhances "Eagle Eye Shot" effect',}},
		feet="Orion Socks +3",
		neck="Iskur Gorget",
		waist="Yemaya Belt",
		left_ear="Telos Earring",
		right_ear="Enervating Earring",
		left_ring="Regal Ring",
		right_ring="Hajduk Ring +1",
		back={ name="Belenus's Cape", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','Rng.Acc.+10','"Store TP"+10',}},}

sets.JA["Barrage"] = set_combine(sets.Midshot,{})

         
-- Waltz Set --
sets.Waltz = {head="Mummu Bonnet +1",body="Passion Jacket",}

sets.Precast = {}

-- Fastcast Set --

sets.Precast.FastCast = {
		head={ name="Carmine Mask", augments={'Accuracy+15','Mag. Acc.+10','"Fast Cast"+3',}},
		body={ name="Samnuha Coat", augments={'Mag. Acc.+14','"Mag.Atk.Bns."+13','"Fast Cast"+4','"Dual Wield"+3',}},
		hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}},
		legs="Gyve Trousers",
		feet={ name="Carmine Greaves", augments={'HP+60','MP+60','Phys. dmg. taken -3',}},
		neck="Sanctity Necklace",
		waist="Flume Belt +1",
		left_ear="Loquac. Earring",
		right_ear="Enchntr. Earring +1",
		left_ring="Weather. Ring",
		right_ring="Stikini Ring",
		back="Moonbeam Cape",}

-- Utsusemi Precast Set --

sets.Precast.Utsusemi = set_combine(sets.Precast.FastCast,{
		body="Passion Jacket",
		neck="Magoraga Beads"})

sets.Midcast = {}

 -- Magic Haste Set --

sets.Midcast.Haste = set_combine(sets.PDT,{})

                if pet.isvalid then
    else
        send_command('wait 3;input /lockstyleset '..StartLockStyle)
    end
        end

         

function pretarget(spell,action)

	if (spell.type:endswith('Magic') or spell.type == "Ninjutsu") and buffactive.silence then -- Auto Use Echo Drops If You Are Silenced --

                        cancel_spell()

                        send_command('input /item "Echo Drops" <me>')

	elseif spell.english == "Berserk" and buffactive.Berserk then -- Change Berserk To Aggressor If Berserk Is On --

                        cancel_spell()

                        send_command('Aggressor')

	elseif spell.english == "Seigan" and buffactive.Seigan then -- Change Seigan To Third Eye If Seigan Is On --

                        cancel_spell()

                        send_command('ThirdEye')

	elseif spell.english == "Meditate" and player.tp > 290 then -- Cancel Meditate If TP Is Above 290 --

                        cancel_spell()

                        add_to_chat(123, spell.name .. ' Canceled: ['..player.tp..' TP]')

	elseif (spell.english == 'Ranged' and spell.target.distance > 24.9) or (player.status == 'Engaged' and ((ranged_ws:contains(spell.english) and spell.target.distance > 16+target_distance) or (spell.type == "WeaponSkill" and not ranged_ws:contains(spell.english) and spell.target.distance > target_distance))) then -- Cancel Ranged Attack or WS If You Are Out Of Range --

                        cancel_spell()

                        add_to_chat(123, spell.name..' Canceled: [Out of Range]')

                        return

                end

        end

         

function precast(spell,action)

	if spell.english == 'Ranged' then

					equipSet = sets.Preshot

					add_to_chat(57,"Flurry Level "..PreshotArray[PreshotIndex])

	if buffactive['Flurry'] then

					add_to_chat(122,"Flurry found")

	if PreshotArray[PreshotIndex] == 'RDM' then

		if  equipSet[player.equipment.range].RDM then 

		equipSet =  equipSet[player.equipment.range].RDM

				end

else

	if  equipSet[player.equipment.range].Any then 

					equipSet =  equipSet[player.equipment.range].Any

end

end

else

	if  equipSet[player.equipment.range] then 

					equipSet =  equipSet[player.equipment.range]

end

					add_to_chat(122,"No flurry")

end

   

					equip(equipSet)

			

			

elseif spell.type == "WeaponSkill" then

		equipSet = sets.WS

	if equipSet[spell.english] then

		equipSet = equipSet[spell.english]

		end

	if equipSet[AccArray[AccIndex]] then

		equipSet = equipSet[AccArray[AccIndex]]

		end

	if player.tp > 2249	 or buffactive.Sekkanoki then

	if spell.english == "Last Stand" then -- Equip Telos Earring When You Have 3000 TP or Sekkanoki For Last Stand --

		equipSet = set_combine(equipSet,{ear2="Telos Earring"})

elseif spell.english == "Jishnu's Radiance" then -- Equip Telos Earring When You Have 3000 TP or Sekkanoki For Jishnu's Radiance --

        equipSet = set_combine(equipSet,{ear2="Telos Earring"})

elseif spell.english == "Trueflight" then --Equip Ishvara Earring When you have 3000 TP or Sekkanoki for Trueflight --

		equipSet = set_combine(equipSet,{ear2="Ishvara Earring"})

end

end

		equip(equipSet)

                        
elseif spell.type=="JobAbility" then

	if sets.JA[spell.english] then

		equip(sets.JA[spell.english])

end

elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" then

	if string.find(spell.english,'Utsusemi') then

    if buffactive['Copy Image (3)'] or buffactive['Copy Image (4)'] then

		cancel_spell()

		add_to_chat(123, spell.name .. ' Canceled: [3+ Images]')

		return

	else
		
		equip(sets.Precast.Utsusemi)

end

	else	

		equip(sets.Precast.FastCast)

end

elseif spell.type == "Waltz" then

		equip(sets.Waltz)

elseif spell.english == 'Spectral Jig' and buffactive.Sneak then

		cast_delay(0.2)

		send_command('cancel Sneak')

end

end
	

        function midcast(spell,action)

                if spell.english == 'Ranged' then

                        equipSet = sets.Midshot

                        if equipSet[player.equipment.range] then

                                equipSet = equipSet[player.equipment.range]

                        end

                        if equipSet[AccArray[AccIndex]] then

                                equipSet = equipSet[AccArray[AccIndex]]

                        end

						

						

                        if buffactive.Barrage and equipSet["Barrage"] then

                                equipSet = equipSet["Barrage"]

                        end

						if buffactive['Double Shot'] and equipSet["Doubleshot"] then

								equipSet = equipSet["Doubleshot"]

						end

						if buffactive['Camouflage'] and equipSet["Camouflage"] then

								equipSet = equipSet["Camouflage"]

						end

                        equip(equipSet)

						

                elseif spell.type:endswith('Magic') or spell.type == "Ninjutsu" then

                        if string.find(spell.english,'Utsusemi') then

                                if spell.english == 'Utsusemi: Ichi' and (buffactive['Copy Image'] or buffactive['Copy Image (2)']) then

                                        send_command('@wait 1.7;cancel Copy Image*')

                                end

                                equip(sets.Midcast.Haste)

                        elseif spell.english == 'Monomi: Ichi' then

                                if buffactive['Sneak'] then

                                        send_command('@wait 1.7;cancel sneak')

                                end

                                equip(sets.Midcast.Haste)

                        else

                                equip(sets.Midcast.Haste)

                        end

                

						if spell.english == "Trueflight" and (buffactive['Aurorastorm']) then

						add_to_chat(125,'weather mode') 

						equip({waist="Hachirin-no-Obi"})

					

				end

						if spell.english == "Wildfire" and (buffactive['Firestorm']) then

						add_to_chat(125,'weather mode')

						equip({waist="Hachirin-no-Obi"})

			end

		end

    end
       

        function aftercast(spell,action)

                if spell.english == 'Ranged' and autoRAmode==1 then

                        autoRA()

                elseif spell.type == "WeaponSkill" and not spell.interrupted then

                        send_command('wait 0.2;gs c TP')

                else

                        status_change(player.status)

                end

        end

         

        function status_change(new,old)

                if Armor == 'PDT' then

                        equip(sets.PDT)

                elseif Armor == 'MDT' then

                        equip(sets.MDT)

                elseif new == 'Engaged' then

                        equipSet = sets.Melee

                        if equipSet[AccArray[AccIndex]] then

                                equipSet = equipSet[AccArray[AccIndex]]

                        end

                        equip(equipSet)

                else

                        equip(sets.Idle[IdleArray[IdleIndex]])

                end

        end

        -- In Game: //gs c (command), Macro: /console gs c (command), Bind: gs c (command) --

        function self_command(command)

                if command == 'acc' then -- Accuracy Level Toggle --

                        AccIndex = (AccIndex % #AccArray) + 1

                        add_to_chat(158,'Accuracy Level: ' .. AccArray[AccIndex])

                        status_change(player.status)

				elseif command == 'flur' then -- Flurry Level Toggle --

						PreshotIndex = (PreshotIndex % #PreshotArray) + 1

						add_to_chat(158,'Flurry Level: ' ..PreshotArray[PreshotIndex])

						status_change(player.status)

                elseif command == 'auto' then -- Auto Update Gear Toggle --

                        status_change(player.status)

                        add_to_chat(158,'Auto Update Gear')

                elseif command == 'pdt' then -- PDT Toggle --

                        if Armor == 'PDT' then

                                Armor = 'None'

                                add_to_chat(123,'PDT Set: [Unlocked]')

                        else

                                Armor = 'PDT'

                                add_to_chat(158,'PDT Set: [Locked]')

                        end

                        status_change(player.status)

                elseif command == 'mdt' then -- MDT Toggle --

                        if Armor == 'MDT' then

                                Armor = 'None'

                                add_to_chat(123,'MDT Set: [Unlocked]')

                        else

                                Armor = 'MDT'

                                add_to_chat(158,'MDT Set: [Locked]')

                        end

                        status_change(player.status)

                elseif command == 'C8' then -- Distance Toggle --

                        if player.target.distance then

                                target_distance = math.floor(player.target.distance*10)/10

                                add_to_chat(158,'Distance: '..target_distance)

                        else

                                add_to_chat(123,'No Target Selected')

                        end

                elseif command == 'C6' then -- Idle Toggle --

                        IdleIndex = (IdleIndex % #IdleArray) + 1

                        add_to_chat(158,'Idle Set: ' .. IdleArray[IdleIndex])

                        status_change(player.status)

                elseif command == 'AutoRA' then -- Auto Ranged Attack Toggle. *Don't Rely On This. It Isn't As Fast As Shooting Manually. It Is Mainly For AFK or When You Dualbox* --

                        if autoRAmode == 0 then

                                autoRAmode = 1

                                add_to_chat(158,'AutoRA Mode: [ON]')

                        else

                                autoRAmode = 0

                                add_to_chat(123,'AutoRA Mode: [OFF]')

                        end

                elseif command == 'TP' then

                        add_to_chat(158,'TP Return: ['..tostring(player.tp)..']')

                elseif command:match('^SC%d$') then

                        send_command('//' .. sc_map[command])

                end

        end
 Ragnarok.Lockfort
Offline
Server: Ragnarok
Game: FFXI
user: Terazuma
Posts: 45
By Ragnarok.Lockfort 2018-04-22 15:05:42
Link | Quote | Reply
 
Code
function aftercast(spell,action)
                if spell.english == 'Ranged' and autoRAmode==1 then
                        autoRA()
                elseif spell.type == "WeaponSkill" and not spell.interrupted then
                        send_command('wait 0.2;gs c TP')
                else
                        status_change(player.status)
                end
        end


the status_change won't fire if it detects the other 2 preceeding conditions. Try this:
Code
function aftercast(spell,action)
                if spell.english == 'Ranged' and autoRAmode==1 then
                        autoRA()
                elseif spell.type == "WeaponSkill" and not spell.interrupted then
                        send_command('wait 0.2;gs c TP')
                end
                status_change(player.status)
end
 Odin.Archaide
Offline
Server: Odin
Game: FFXI
user: Archaide
Posts: 4
By Odin.Archaide 2018-04-22 15:33:59
Link | Quote | Reply
 
Thanks, works like a charm.
First Page 2 3 ... 133 134
Log in to post.