|
Gearswap Support Thread
Asura.Chiaia
VIP
Serveur: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2018-04-10 20:05:32
something like this should work
if buffactive.gelus == 3 then
Serveur: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 10:05:36
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
Serveur: Ragnarok
Game: FFXI
Posts: 2973
By Ragnarok.Martel 2018-04-11 10:33:12
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.
Serveur: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 10:42:34
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
Serveur: Ragnarok
Game: FFXI
Posts: 2973
By Ragnarok.Martel 2018-04-11 11:17:35
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.
Serveur: Asura
Game: FFXI
By Asura.Summerl 2018-04-11 12:08:45
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
Serveur: Ragnarok
Game: FFXI
Posts: 2973
By Ragnarok.Martel 2018-04-11 13:26:29
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
Serveur: Asura
Game: FFXI
Posts: 73
By Asura.Dagget 2018-04-14 17:43:30
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.
By aisukage 2018-04-16 22:50:34
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
Serveur: Quetzalcoatl
Game: FFXI
Posts: 687
By Quetzalcoatl.Langly 2018-04-16 23:00:06
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.
By aisukage 2018-04-16 23:09:03
Quetzalcoatl.Langly 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
Serveur: Cerberus
Game: FFXI
Posts: 150
By Cerberus.Quintow 2018-04-22 10:26:38
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
Serveur: Cerberus
Game: FFXI
Posts: 11
By Cerberus.Dougg 2018-04-22 11:03:03
" 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
VIP
Serveur: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2018-04-22 11:04:48
' 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
Serveur: Cerberus
Game: FFXI
Posts: 150
By Cerberus.Quintow 2018-04-22 11:06:33
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
Serveur: Odin
Game: FFXI
Posts: 124
By Odin.Archaide 2018-04-22 14:18:35
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
Serveur: Ragnarok
Game: FFXI
Posts: 252
By Ragnarok.Lockfort 2018-04-22 15:05:42
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
Serveur: Odin
Game: FFXI
Posts: 124
By Odin.Archaide 2018-04-22 15:33:59
Thanks, works like a charm.
Bahamut.Mayoyama
Serveur: Bahamut
Game: FFXI
Posts: 26
By Bahamut.Mayoyama 2018-04-24 09:27:33
Hey all
So after successfully adjusting a few rules before on other luas I fool-heatedly raced in blind to try make this pup lua work more how I want it to (original kine one treats whm head as a mage.. even with VE body), but now I am way in over my head and 5 hrs of bashing my head against the wall I need help please -.-
https://github.com/Mayoyama/PUP/blob/master/PUPFaulty.lua
https://github.com/Mayoyama/PUP/blob/master/Mayoyamanakata_PUP_GearFaulty.lua
So I'm trying to make it so that GS will alter my idle and engaged sets depending on the state I cycle to, but the more I did the more it broke and now it just doesn't even register my pet being idle or engaged.
PLEASE HELP!
Serveur: Cerberus
Game: FFXI
Posts: 1814
By Cerberus.Shadowmeld 2018-04-24 11:07:49
' 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
If you are typing it into the console is should be
//gs equip sets.precast.WS."Rudra's Storm".TA
If you don't use the "" to encapsulate Rudra's storm it stops processing at the end of Rudra's.
By Narvosa 2018-04-25 19:05:16
So I am looking to add a Sneak attack set to other jobs if I am /thf. How would I go about putting those in? Pretty dumb when it comes to gearswap outside of just plugging in new items to an already built lua.
Ragnarok.Lockfort
Serveur: Ragnarok
Game: FFXI
Posts: 252
By Ragnarok.Lockfort 2018-04-26 12:49:09
Is this for ws? Post your lua first, and then let us know what you intend for sneak attack set to be for.
By Narvosa 2018-04-26 16:34:32
Yes this would be for a WS. I am looking to equip a specific set for when the Sneak Attack buff is active. If Sneak attack is active equip X, if not use normal Rudra set. Similar to how the Climantic flourish active function is. Just have no idea how to go about plugging a SA in without breaking something x.x
Thank you in advance for your help Code function get_sets()
mote_include_version = 2
-- Load and initialize the include file.
include('Mote-Include.lua')
end
-- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked.
function job_setup()
state.Buff['Climactic Flourish'] = buffactive['climactic flourish'] or false
state.MainStep = M{['description']='Main Step', 'Box Step', 'Quickstep'}
state.AltStep = M{['description']='Alt Step', 'Quickstep', 'Feather Step', 'Stutter Step', 'Box Step'}
state.UseAltStep = M(false, 'Use Alt Step')
state.SelectStepTarget = M(false, 'Select Step Target')
state.IgnoreTargetting = M(false, 'Ignore Targetting')
state.CurrentStep = M{['description']='Current Step', 'Main', 'Alt'}
state.SkillchainPending = M(false, 'Skillchain Pending')
determine_haste_group()
end
-------------------------------------------------------------------------------------------------------------------
-- User setup functions for this job. Recommend that these be overridden in a sidecar file.
-------------------------------------------------------------------------------------------------------------------
-- Setup vars that are user-dependent. Can override this function in a sidecar file.
function user_setup()
state.OffenseMode:options('Normal', 'Acc', 'Fodder')
state.HybridMode:options('Normal', 'Evasion', 'PDT')
state.WeaponskillMode:options('Normal', 'Acc', 'Fodder')
state.PhysicalDefenseMode:options('Evasion', 'PDT')
gear.default.weaponskill_neck = "Caro Necklace"
gear.default.weaponskill_waist = "Caudata Belt"
gear.AugQuiahuiz = {name="Quiahuiz Trousers", augments={'Haste+2','"Snapshot"+2','STR+8'}}
-- Additional local binds
send_command('bind ^= gs c cycle mainstep')
send_command('bind !f12 gs c cycle altstep')
send_command('bind ^- gs c toggle selectsteptarget')
send_command('bind f12 gs c toggle usealtstep')
send_command('bind ^` input /ja "Chocobo Jig" <me>')
send_command('bind !` input /ja "Chocobo Jig II" <me>')
select_default_macro_book()
end
-- Called when this job file is unloaded (eg: job change)
function user_unload()
send_command('unbind ^`')
send_command('unbind !`')
send_command('unbind ^=')
send_command('unbind !=')
send_command('unbind ^-')
send_command('unbind !-')
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
-- Precast Sets
-- Precast sets to enhance JAs
sets.precast.JA['No Foot Rise'] = {body="Horos Casaque +1"}
sets.precast.JA['Trance'] = {head="Horos Tiara"}
-- Waltz set (chr and vit)
sets.precast.Waltz = {ammo="Vanir Battery",
head="Mummu Bonnet",ear1="Brutal Earring",
body="Dancer's Casaque",hands="Shneddick Gloves +1",ring1="Epona's Ring",
back="Atheling Mantle",waist="Cetl Belt",legs="Shneddick Tights +1",feet="Shneddick Boots +1"}
-- Don't need any special gear for Healing Waltz.
sets.precast.Waltz['Healing Waltz'] = {}
sets.precast.Samba = {head="Dancer's Tiara", back="Senuna's Mantle"}
sets.precast.Jig = {feet="Dancer's Shoes"}
sets.precast.Step = {waist="Life Belt"}
sets.precast.Step['Feather Step'] = {feet="Dancer's Shoes"}
sets.precast.Flourish1 = {}
sets.precast.Flourish1['Violent Flourish'] = {ammo ="Charis Feather",ear1="Heartseeker Earring",ear2="Dudgeon Earring",neck="Atzintli Necklace",
body="Haruspex Coat",hands="Wayfarer Cuffs",ring1="Ecphoria Ring",ring2="Rajas Ring",
waist="Life belt",legs="Manibozho Brais",feet="Wayfarer Clogs"} -- magic accuracy
sets.precast.Flourish1['Desperate Flourish'] = {ammo ="Charis Feather",ear1="Heartseeker Earring",
ear2="Dudgeon Earring",neck="Atzintli Necklace",body="Horos Casaque",
hands="Maculele Bangles",ring1="Ecphoria Ring",ring2="Rajas Ring",
waist="Life Belt",legs="Manibozho Brais",feet="Shneddick Boots +1"} -- acc gear
sets.precast.Flourish2 = {}
sets.precast.Flourish2['Reverse Flourish'] = {hands="Maculele Bangles"}
sets.precast.Flourish3 = {}
sets.precast.Flourish3['Striking Flourish'] = {body="Charis Casaque +2"}
sets.precast.Flourish3['Climactic Flourish'] = {head="Maculele Tiara"}
-- Fast cast sets for spells
sets.precast.FC = {ammo="Impatiens",head="Haruspex Hat",ear2="Loquacious Earring",hands="Thaumas Gloves",ring1="Prolix Ring"}
sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {neck="Magoraga Beads"})
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
sets.precast.WS = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS.Acc = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
-- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
sets.precast.WS['Exenterator'] = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS['Exenterator'].Acc ={ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS['Exenterator'].Fodder = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS['Pyrrhic Kleos'] = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Shneddick Tabard +1",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Manibozho Brais",feet="Manibozho Boots"}
sets.precast.WS['Pyrrhic Kleos'].Acc = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Shneddick Tabard +1",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Manibozho Brais",feet="Manibozho Boots"}
sets.precast.WS['Evisceration'] = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Mummu Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS['Evisceration'].Acc = {ammo="Charis Feather",
head="Herculean Helm",neck="Soil Gorget",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Mummu Jacket ",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Mummu Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Mummu Kecks",feet="Herculean Boots"}
sets.precast.WS["Rudra's Storm"] = {ammo="Charis Feather",
head="Herculean Helm",neck="Caro Necklace",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Meghanada Cuirie",hands="Meghanada Gloves +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Weapon skill damage +10%',}}
,waist="Grunfeld Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.precast.WS["Rudra's Storm"].Acc = {ammo="Charis Feather",
head="Herculean Helm",neck="Caro Necklace",ear1="Brutal Earring",ear2="Ishvara Earring",
body="Meghanada Cuirie",hands="Meghanada Gloves +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Weapon skill damage +10%',}}
,waist="Grunfeld Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.precast.WS['Aeolian Edge'] = {ammo="Charis Feather",
head="Wayfarer Circlet",neck="Atzintli Necklace",ear1="Novio Earring",ear2="Hecate's Earring",
body="Wayfarer Robe",hands="Wayfarer Cuffs",ring1="Acumen Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Shadow Belt",legs="Shneddick Tights +1",feet="Wayfarer Clogs"}
sets.precast.Skillchain = {hands="Maculele Bangles"}
-- Midcast Sets
sets.midcast.FastRecast = {
head="Felistris Mask",ear2="Loquacious Earring",
body="Iuitl Vest",hands="Iuitl Wristbands",
legs="Kaabnax Trousers",feet="Iuitl Gaiters +1"}
-- Specific spells
sets.midcast.Utsusemi = {
head="Felistris Mask",neck="Ej Necklace",ear2="Loquacious Earring",
body="Iuitl Vest",hands="Iuitl Wristbands",ring1="Beeline Ring",
back="Toetapper Mantle",legs="Kaabnax Trousers",feet="Iuitl Gaiters +1"}
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {head="Ocelomeh Headpiece +1",neck="Wiglen Gorget",
ring1="Sheltered Ring",ring2="Paguroidea Ring"}
sets.ExtraRegen = {head="Ocelomeh Headpiece +1"}
-- Idle sets
sets.idle = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.idle.Town ={ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.idle.Weak = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
-- Defense sets
sets.defense.Evasion = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.defense.PDT = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.defense.MDT = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.Kiting = {feet="Skadi's Jambeaux +1"}
-- Engaged sets
-- Variations for TP weapon and (optional) offense/defense modes. Code will fall back on previous
-- sets if more refined versions aren't defined.
-- If you create a set with both offense and defense modes, the offense mode should be first.
-- EG: sets.engaged.Dagger.Accuracy.Evasion
-- Normal melee group
sets.engaged = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Fodder = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Fodder.Evasion = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Evasion = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.PDT = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.Evasion ={ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.PDT = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Mummu Kecks",feet="Herculean Boots"}
-- Custom melee group: High Haste (2x March or Haste)
sets.engaged.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Fodder.HighHaste ={ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Fodder.Evasion.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Evasion.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.Evasion.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.PDT.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses",feet="Herculean Boots"}
sets.engaged.Acc.PDT.HighHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses",feet="Herculean Boots"}
-- Custom melee group: Max Haste (2x March + Haste)
sets.engaged.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses",feet="Herculean Boots"}
-- Getting Marches+Haste from Trust NPCs, doesn't cap delay.
sets.engaged.Fodder.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses",feet="Herculean Boots"}
sets.engaged.Fodder.Evasion.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Evasion.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.Evasion.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.PDT.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
sets.engaged.Acc.PDT.MaxHaste = {ammo="Vanir Battery",
head="Herculean Helm",neck="Asperity Necklace",ear1="Brutal Earring",ear2="Suppanomimi",
body="Mummu Jacket",hands="Mummu Wrists +1",ring1="Epona's Ring",ring2="Rajas Ring",
back={ name="Senuna's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}
,waist="Windbuffet Belt",legs="Meghanada Chausses +1",feet="Herculean Boots"}
-- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
sets.buff['Saber Dance'] = {legs="Horos Tights"}
sets.buff['Climactic Flourish'] = {head="Maculele Tiara",back="Senuna's Mantle"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks for standard casting events.
-------------------------------------------------------------------------------------------------------------------
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
-- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
function job_precast(spell, action, spellMap, eventArgs)
--auto_presto(spell)
end
function job_post_precast(spell, action, spellMap, eventArgs)
if spell.type == "WeaponSkill" then
if state.Buff['Climactic Flourish'] then
equip(sets.buff['Climactic Flourish'])
end
if state.SkillchainPending.value == true then
equip(sets.precast.Skillchain)
end
end
end
-- Return true if we handled the aftercast work. Otherwise it will fall back
-- to the general aftercast() code in Mote-Include.
function job_aftercast(spell, action, spellMap, eventArgs)
if not spell.interrupted then
if spell.english == "Wild Flourish" then
state.SkillchainPending:set()
send_command('wait 5;gs c unset SkillchainPending')
elseif spell.type:lower() == "weaponskill" then
state.SkillchainPending:toggle()
send_command('wait 6;gs c unset SkillchainPending')
end
end
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks for non-casting events.
-------------------------------------------------------------------------------------------------------------------
-- Called when a player gains or loses a buff.
-- buff == buff gained or lost
-- gain == true if the buff was gained, false if it was lost.
function job_buff_change(buff,gain)
-- If we gain or lose any haste buffs, adjust which gear set we target.
if S{'haste','march','embrava','haste samba'}:contains(buff:lower()) then
determine_haste_group()
handle_equipping_gear(player.status)
elseif buff == 'Saber Dance' or buff == 'Climactic Flourish' then
handle_equipping_gear(player.status)
end
end
function job_status_change(new_status, old_status)
if new_status == 'Engaged' then
determine_haste_group()
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements standard library decisions.
-------------------------------------------------------------------------------------------------------------------
-- Called by the default 'update' self-command.
function job_update(cmdParams, eventArgs)
determine_haste_group()
end
function customize_idle_set(idleSet)
if player.hpp < 80 and not areas.Cities:contains(world.area) then
idleSet = set_combine(idleSet, sets.ExtraRegen)
end
return idleSet
end
function customize_melee_set(meleeSet)
if state.DefenseMode.value ~= 'None' then
if buffactive['saber dance'] then
meleeSet = set_combine(meleeSet, sets.buff['Saber Dance'])
end
if state.Buff['Climactic Flourish'] then
meleeSet = set_combine(meleeSet, sets.buff['Climactic Flourish'])
end
end
return meleeSet
end
-- Handle auto-targetting based on local setup.
function job_auto_change_target(spell, action, spellMap, eventArgs)
if spell.type == 'Step' then
if state.IgnoreTargetting.value == true then
state.IgnoreTargetting:reset()
eventArgs.handled = true
end
eventArgs.SelectNPCTargets = state.SelectStepTarget.value
end
end
-- Function to display the current relevant user state when doing an update.
-- Set eventArgs.handled to true if display was handled, and you don't want the default info shown.
function display_current_job_state(eventArgs)
local msg = 'Melee'
if state.CombatForm.has_value then
msg = msg .. ' (' .. state.CombatForm.value .. ')'
end
msg = msg .. ': '
msg = msg .. state.OffenseMode.value
if state.HybridMode.value ~= 'Normal' then
msg = msg .. '/' .. state.HybridMode.value
end
msg = msg .. ', WS: ' .. state.WeaponskillMode.value
if state.DefenseMode.value ~= 'None' then
msg = msg .. ', ' .. 'Defense: ' .. state.DefenseMode.value .. ' (' .. state[state.DefenseMode.value .. 'DefenseMode'].value .. ')'
end
if state.Kiting.value then
msg = msg .. ', Kiting'
end
msg = msg .. ', ['..state.MainStep.current
if state.UseAltStep.value == true then
msg = msg .. '/'..state.AltStep.current
end
msg = msg .. ']'
if state.SelectStepTarget.value == true then
steps = steps..' (Targetted)'
end
add_to_chat(122, msg)
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- User self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called for custom player commands.
function job_self_command(cmdParams, eventArgs)
if cmdParams[1] == 'step' then
if cmdParams[2] == 't' then
state.IgnoreTargetting:set()
end
local doStep = ''
if state.UseAltStep.value == true then
doStep = state[state.CurrentStep.current..'Step'].current
state.CurrentStep:cycle()
else
doStep = state.MainStep.current
end
send_command('@input /ja "'..doStep..'" <t>')
end
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
function determine_haste_group()
-- We have three groups of DW in gear: Charis body, Charis neck + DW earrings, and Patentia Sash.
-- For high haste, we want to be able to drop one of the 10% groups (body, preferably).
-- High haste buffs:
-- 2x Marches + Haste
-- 2x Marches + Haste Samba
-- 1x March + Haste + Haste Samba
-- Embrava + any other haste buff
-- For max haste, we probably need to consider dropping all DW gear.
-- Max haste buffs:
-- Embrava + Haste/March + Haste Samba
-- 2x March + Haste + Haste Samba
classes.CustomMeleeGroups:clear()
if buffactive.embrava and (buffactive.haste or buffactive.march) and buffactive['haste samba'] then
classes.CustomMeleeGroups:append('MaxHaste')
elseif buffactive.march == 2 and buffactive.haste and buffactive['haste samba'] then
classes.CustomMeleeGroups:append('MaxHaste')
elseif buffactive.embrava and (buffactive.haste or buffactive.march or buffactive['haste samba']) then
classes.CustomMeleeGroups:append('HighHaste')
elseif buffactive.march == 1 and buffactive.haste and buffactive['haste samba'] then
classes.CustomMeleeGroups:append('HighHaste')
elseif buffactive.march == 2 and (buffactive.haste or buffactive['haste samba']) then
classes.CustomMeleeGroups:append('HighHaste')
end
end
-- Automatically use Presto for steps when it's available and we have less than 3 finishing moves
function auto_presto(spell)
if spell.type == 'Step' then
local allRecasts = windower.ffxi.get_ability_recasts()
local prestoCooldown = allRecasts[236]
local under3FMs = not buffactive['Finishing Move 3'] and not buffactive['Finishing Move 4'] and not buffactive['Finishing Move 5']
if player.main_job_level >= 77 and prestoCooldown < 1 and under3FMs then
cast_delay(1.1)
send_command('@input /ja "Presto" <me>')
end
end
end
-- Select default macro book on initial load or subjob change.
function select_default_macro_book()
-- Default macro set/book
if player.sub_job == 'WAR' then
set_macro_page(3, 20)
elseif player.sub_job == 'NIN' then
set_macro_page(1, 20)
elseif player.sub_job == 'SAM' then
set_macro_page(2, 20)
else
set_macro_page(5, 20)
end
end
By hobo 2018-04-27 01:36:43
I have an issue with the obi rule on my corsair, probably something dumb as usual. Did I just make a simple mistake somewhere when I stole this?
Thanks in advance for any help
Code
sets.Obi = {waist="Hachirin-no-Obi"}
function job_post_precast(spell, action, spellMap, eventArgs)
-- Equip obi if weather/day matches for WS/Quick Draw.
if spell.type == 'WeaponSkill' or spell.type == 'CorsairShot' then
if spell.english == 'Leaden Salute' and (world.weather_element == 'Dark' or world.day_element == 'Dark') then
equip(sets.Obi)
elseif spell.english == 'Wildfire' and (world.weather_element == 'Fire' or world.day_element == 'Fire') then
equip(sets.Obi)
elseif spell.type == 'CorsairShot' and (spell.element == world.weather_element or spell.element == world.day_element) then
equip(sets.Obi)
end
end
end
By Squinookle 2018-04-27 06:58:23
Hi!
Ever since adding a new augment on my Ogma's Capes gearswap stopped equipping them. Can anyone help me find out why?
Code
sets.precast.WS['Resolution'] = {
ammo="Knobkierrie",
head="Meghanada Visor +2",
body="Ayanmo Corazza +2",
hands="Herculean Gloves",
legs="Taeon tights",
feet="Herculean Boots",
neck="Breeze gorget",
waist="Breeze belt",
left_ear="Cessance Earring",
right_ear="Ishvara Earring",
left_ring="Niqmaddu Ring",
right_ring="Epona's Ring",
back={ name="Ogma's cape", augments={'STR+30','Accuracy+20','Attack+20','"Dbl. Atk."+10','Parrying rate +1%',}},
}
and this one
Code sets.precast.JA['Vallation'] = {
ammo="Aqreqaq Bomblet",
head="Erilaz galea +1",
neck="Sanctity necklace",
body="Runeist's Coat +2",
hands="Runeist mitons +1",
legs="Futhark Trousers +1",
feet="Runeist bottes +1",
back={ name="Ogma's cape", augments={'HP+60','Mag. Evasion+10','Eva.+20/Mag. Eva.+20','Enmity+10',}},
}
New augments are added from the new ambuscade item
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.
|
|