Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ----- Credit: Krystela of Asura | Last Update: 27 November 2016 ---->
- ---- .:: This was entirely created by me, it's not based off anyone's file ::. ---->
- ---- Always visit http://pastebin.com/u/KrystelaRose to look for possible updates ---->
- ---- .:: Please leave credit where it's due ::. ---->
- ---- v2.0 by Pergatory of Asura -- http://pastebin.com/u/Pergatory
- function user_unload()
- send_command('unbind f9')
- send_command('unbind f10')
- send_command('unbind f11')
- send_command('unbind f12')
- send_command('unbind ^f9')
- send_command('unbind ^f10')
- send_command('unbind ^f11')
- send_command('unbind ^f12')
- enable("main","sub","range","ammo","head","neck","ear1","ear2","body","hands","ring1","ring2","back","waist","legs","feet")
- end
- function get_sets()
- -- Binds for modes
- send_command('bind f9 gs c ToggleIdle')
- send_command('bind f10 gs c MagicBurst')
- send_command('bind f11 input /item "Panacea" <me>')
- send_command('bind f12 input /item "Holy Water" <me>')
- send_command('bind ^f9 gs c WeaponLock')
- send_command('bind ^f10 gs c TH')
- send_command('bind ^f11 gs c LowDmg')
- send_command('bind ^f12 input /item "Remedy" <me>')
- -- Auto Functions --
- AutoRemedy = false -- Set to ON if you want to auto use remedies if silenced or Paralyzed, otherwise set to OFF --
- -- Mode Defaults --
- IdleMode = 'Move' -- Press F9 to toggle idle mode --
- WeaponLock = false -- Press F10 for Weapon Lock--
- LowDmg = true -- Press F11 to toggle low-damage helix set. Used for making skillchains against enemies that reflect ailments like in Sortie.
- -- Helix II will still use the full damage set so it's safe to leave this turned on most of the time.
- MagicBurst = true -- Press F10 to circle through Magic modes --
- OccultMode = false
- VagaryMode = false -- "//gs c Vagary" to enable Vagary nuking set (target 5~7k damage magic burst)
- TreasureHunter = false -- Press Ctrl + F10 to toggle Treasure Hunter. Only equips for spells in the "THSpells" list below.
- RegenPotency = true
- IdleModes = {'Refresh','Move','DT','Kite','TP'}
- gear = {}
- -- Situational Gear --
- -- Fill these if you have the item. --
- gear.Duration_Hands = {hands="Arbatel Bracers +3"} -- Add Empy hands if you want to use it, it not leave {} empty --
- gear.Refresh_Head = {head="Amalric Coif +1"} -- Add refresh effect + head if you want to use it, it not leave {} empty --
- gear.Alacrity_Feet = {} -- Add Relic feet for stun if you want to use it, it not leave {} empty --
- gear.Klimaform_Feet = {} -- Add Empyrean feet for Klimaform nukes if you want to use it, it not leave {} empty --
- gear.Rapture_Head = {head="Arbatel Bonnet +3"} -- Add Empyrean Head for Rapture Heals if you want to use it, it not leave {} empty --
- -- Element-specific nuking pieces
- gear.Stone = {neck="Quanpur Necklace"}
- -- Set macro book/set --
- macrobook = 13
- if player.sub_job=='DRK' then
- macrobook = 33
- end
- send_command('input /macro book '..macrobook..';wait .1;input /macro set 10;wait 3;input /lockstyleset 85') -- set macro book/set here --
- --send_command('input /macro book '..macrobook..';wait .1;input /macro set 10;wait 3;input /lockstyleset 99') -- set macro book/set here --
- THSpells = S{"Dia","Dia II","Diaga","Dispelga","Bio","Bio II"} -- If you want Treasure Hunter gear to swap for a spell/ability, add it here.
- -- Treasure Hunter set. Don't put anything in here except TH+ gear.
- -- It overwrites slots in other sets when TH toggle is on (Ctrl+F10).
- sets.TH = {
- head="Volte Cap",
- waist="Chaac Belt",
- hands="Volte Bracers",
- feet="Volte Boots"
- }
- -- Lists --
- NoHelixMonsters = S{"Gartell","Leshonn","Haughty Tulittia"} -- To prevent accidents, you will not be able to cast Helix II spells on these targets.
- --Regular helix can still be cast on these, so take care that you've got the low damage toggle on.
- Town = S{"Ru'Lude Gardens","Upper Jeuno","Lower Jeuno","Port Jeuno","Port Windurst","Windurst Waters","Windurst Woods","Windurst Walls","Heavens Tower",
- "Port San d'Oria","Northern San d'Oria","Southern San d'Oria","Port Bastok","Bastok Markets","Bastok Mines","Metalworks","Aht Urhgan Whitegate",
- "Tavnazian Safehold","Nashmau","Selbina","Mhaura","Norg","Eastern Adoulin","Western Adoulin","Kazham","Heavens Tower"}
- ---- Precast ----
- sets.precast = {}
- -- Fast Cast Set --
- sets.precast.FC = {
- main="Musa", -- +10
- sub="Clerisy Strap +1", -- +3
- ammo="Sapience Orb", -- +2
- head="Pedagogy Mortarboard +3",
- neck="Orunmila's Torque", -- +5
- ear1="Malignance Earring", -- +4
- ear2="Loquac. Earring", -- +2
- body="Zendik Robe", -- +13
- hands="Academic's Bracers +3", -- +9
- ring1="Kishar Ring", -- +4
- ring2="Rahab Ring", -- +2
- back={ name="Lugh's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Phys. dmg. taken-10%',}},
- waist="Embla Sash", -- +5
- legs="Pinga Pants +1", -- +13
- feet="Academic's Loafers +3"
- }
- -- Fast Cast set used when your spell matches your active grimoire.
- --sets.precast.FC.Grimoire = set_combine(sets.precast.FC, {
- --})
- -- Immanence FC set, avoid quick magic so you don't mess with magic burst timing.
- --sets.precast.FC['Immanence'] = set_combine(sets.precast.FC.Grimoire, {
- --})
- sets.precast.FC.WeaponLock = set_combine(sets.precast.FC, {
- head="Amalric Coif +1"
- })
- sets.precast['Impact'] = set_combine(sets.precast.FC, { -- Make sure to leave the head empty --
- head=empty,
- body="Crepuscular Cloak"})
- sets.precast["Dispelga"] = set_combine(sets.precast.FC, {
- main="Daybreak",
- sub="Ammurapi Shield"
- })
- -- Job Abilities --
- sets.JA = {}
- sets.JA['Tabula Rasa'] = { legs="Pedagogy Pants +1" }
- ---- Midcast ----
- sets.midcast = {}
- -- Base Set --
- sets.midcast.Recast = set_combine(sets.precast.FC, {
- head="Amalric Coif +1",
- feet={ name="Merlinic Crackows", augments={'DEX+10','Phys. dmg. taken -2%','"Refresh"+2','Accuracy+3 Attack+3',}},
- })
- -- Healing Magic --
- sets.midcast.Cure = {
- main="Daybreak",
- sub="Ammurapi Shield",
- ammo="Esper Stone +1",
- head="Kaykaus Mitra +1",
- neck="Incanter's Torque",
- ear1="Novia Earring",
- ear2="Meili Earring",
- body="Zendik Robe",
- hands="Kaykaus Cuffs +1",
- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- ring2="Haoma's Ring",
- --back="Tempered Cape +1",
- back="Moonlight Cape",
- waist="Luminary Sash",
- legs={ name="Kaykaus Tights +1", augments={'INT+12','"Mag.Atk.Bns."+20','Enmity-6',}},
- feet="Kaykaus Boots +1"
- }
- sets.midcast.Cure.Weather = set_combine(sets.midcast.Cure, {
- main="Chatoyant staff",
- sub="Clerisy Strap +1",
- back="Twilight Cape",
- waist="Hachirin-no-Obi",
- })
- sets.midcast.Cure.WeaponLock = set_combine(sets.midcast.Cure, {
- })
- sets.midcast['Cursna'] = set_combine(sets.midcast.Recast, {
- main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','DEX+1','Mag. Acc.+5','"Mag.Atk.Bns."+18','DMG:+4',}},
- sub="Ammurapi Shield",
- ammo="Impatiens",
- head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
- neck="Debilis Medallion",
- ear1="Meili Earring",
- ear2="Beatific Earring",
- body="Pedagogy Gown +3",
- hands="Hieros Mittens",
- ring1="Menelaus's Ring",
- ring2="Haoma's Ring",
- back="Tempered Cape +1",
- waist="Bishop's Sash",
- feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}}
- })
- -- Enhancing Magic --
- sets.midcast.Enhancing = { -- Max enhancing set for spells with no cap like Enspell
- main="Musa",
- sub="Clerisy Strap +1",
- ammo="Savant's Treatise",
- head={ name="Telchine Cap", augments={'Mag. Evasion+24','"Conserve MP"+4','Enh. Mag. eff. dur. +10',}},
- neck="Incanter's Torque",
- ear1="Mimir Earring",
- ear2="Andoaa earring",
- body="Pedagogy Gown +3",
- hands={ name="Telchine Gloves", augments={'Mag. Evasion+25','"Fast Cast"+5','Enh. Mag. eff. dur. +10',}},
- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- ring2={name="Stikini Ring +1", bag="wardrobe4"},
- back="Perimede Cape",
- waist="Embla sash",
- legs={ name="Telchine Braconi", augments={'Mag. Evasion+25','"Conserve MP"+4','Enh. Mag. eff. dur. +10',}},
- feet={ name="Telchine Pigaches", augments={'Mag. Evasion+24','"Conserve MP"+3','Enh. Mag. eff. dur. +10',}}
- }
- sets.midcast.Enhancing500 = set_combine(sets.midcast.Enhancing, { -- This is 500 skill and full duration --
- })
- sets.midcast.Enhancing500.WeaponLock = set_combine(sets.midcast.Enhancing500, {}) -- Priority: 500skil > Duration For when weapon is locked --
- sets.midcast['Phalanx'] = set_combine(sets.midcast.Enhancing, {}) -- If you have specific phalanx gears --
- sets.midcast.Regen = set_combine(sets.midcast.Enhancing500, {
- main="Musa",
- sub="Clerisy Strap +1",
- back={ name="Lugh's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Phys. dmg. taken-10%',}},
- })
- sets.midcast.Regen.Potency = set_combine(sets.midcast.Regen, {
- head="Arbatel Bonnet +3",
- back="Bookworm's Cape",
- })
- sets.midcast['Stoneskin'] = set_combine(sets.midcast.Enhancing500, {
- neck="Nodens Gorget",
- ear2="Earthcry Earring",
- waist="Siegel Sash",
- })
- sets.midcast['Aquaveil'] = set_combine(sets.midcast.Enhancing500, {
- main="Vadose Rod",
- head="Amalric Coif +1",
- hands="Regal Cuffs",
- waist="Emphatikos Rope",
- })
- -- Enfeebling Magic --
- sets.midcast.Enfeebling = { -- Full skill set for frazzle/distract/Poison --
- main="Daybreak",
- sub="Ammurapi Shield",
- ammo="Pemphredo Tathlum",
- head="Acad. Mortar. +3",
- neck="Argute Stole +2",
- ear1="Regal Earring",
- ear2="Arbatel Earring +2",
- body="Academic's Gown +3",
- hands="Kaykaus Cuffs +1",
- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- ring2={name="Stikini Ring +1", bag="wardrobe4"},
- back="Aurist's Cape +1",
- waist="Obstinate Sash",
- legs="Arbatel Pants +3",
- feet="Acad. Loafers +3"
- }
- sets.midcast.Enfeebling.MND = set_combine(sets.midcast.Enfeebling, {}) -- For Paralyze/Slow who's potency/macc is enhanced by MND --
- sets.midcast.Enfeebling.INT = set_combine(sets.midcast.Enfeebling, { -- For Blind/Bind who's Macc is enhanced by INT --
- --waist="Acuity Belt +1"
- })
- sets.midcast.Enfeebling.Duration = set_combine(sets.midcast.Enfeebling, {
- hands="Regal Cuffs",
- })
- sets.midcast.Enfeebling.Ele = set_combine(sets.midcast.Enfeebling.INT, { -- For Burn/Drown/etc
- legs="Agwu's Slops"
- })
- sets.midcast["Dispelga"] = set_combine(sets.midcast.Enfeebling.Macc, {
- main="Daybreak",
- sub="Ammurapi Shield"
- })
- -- Dark Magic --
- sets.midcast.Dark = set_combine(sets.midcast.Recast, {
- neck="Erra Pendant",
- ear1="Mani Earring",
- ear2="Regal Earring",
- body="Academic's Gown +3",
- --head="Pixie Hairpin +1",
- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- ring2={name="Stikini Ring +1", bag="wardrobe4"},
- back="Bookworm's Cape",
- legs="Pedagogy Pants +1",
- })
- sets.midcast.Aspir = set_combine(sets.midcast.Dark, {
- ring1="Archon Ring",
- ring2="Evanescence Ring",
- waist="Fucho-no-Obi",
- feet="Agwu's Pigaches"
- })
- sets.midcast['Stun'] = set_combine(sets.midcast.Recast, {})
- sets.midcast['Absorb-TP'] = set_combine(sets.midcast.Recast, {
- sub="Khonsu",
- ammo="Pemphredo Tathlum",
- head="Amalric Coif +1",
- neck="Argute Stole +2",
- ear1="Crepuscular Earring",
- body="Agwu's Robe",
- hands="Agwu's Gages",
- ring2="Metamorph Ring +1",
- waist="Acuity Belt +1",
- legs="Arbatel Pants +3",
- feet="Agwu's Pigaches"
- })
- -- Elemental Magic --
- sets.midcast.Elemental = { -- Normal Nukes --
- main="Opashoro",
- --sub="Enki Strap",
- sub="Khonsu",
- ammo="Ghastly Tathlum +1",
- head="Pedagogy mortarboard +3",
- neck="Argute Stole +2",
- ear1="Malignance Earring",
- ear2="Arbatel Earring +2",
- body="Arbatel Gown +3",
- hands="Arbatel Bracers +3",
- ring1="Freke Ring",
- ring2="Metamorph Ring +1",
- back={ name="Lugh's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},
- waist="Sacro Cord",
- legs="Agwu's Slops",
- feet="Arbatel Loafers +3"
- }
- -- For when MB mode is turned on --
- sets.midcast.Elemental.MB = set_combine(sets.midcast.Elemental, {
- body="Agwu's Robe",
- hands="Agwu's Gages",
- ring1="Mujin Band",
- })
- sets.midcast.Elemental.Weather = set_combine(sets.midcast.Elemental, {
- waist="Hachirin-no-Obi",
- })
- sets.midcast.Elemental.MB.Weather = set_combine(sets.midcast.Elemental.MB, {
- waist="Hachirin-no-Obi"
- })
- -- Occult Acumen sets (uses magic burst sets as baseline)
- sets.midcast.Elemental.Occult = set_combine(sets.midcast.Elemental.MB, {
- legs="Perdition Slops",
- })
- sets.midcast.Elemental.Occult.Weather = set_combine(sets.midcast.Elemental.MB.Weather, {
- legs="Perdition Slops",
- })
- -- Target: 5~7k damage magic bursted
- sets.midcast.Elemental.Vagary = {
- main="Bolelabunga",
- sub="Genmei Shield",
- ammo="Ghastly Tathlum +1",
- --head="Pedagogy mortarboard +3", --high
- head="Academic's mortarboard +3", --low
- neck="Argute Stole +2",
- ear1="Malignance Earring",
- ear2="Arbatel Earring +2",
- --body="Arbatel Gown +3", --high
- body="Annointed Kalasiris", --low
- --hands="Arbatel Bracers +3", --high
- hands="Academic's Bracers +3", --low
- ring1="Freke Ring",
- ring2="Metamorph Ring +1",
- back={ name="Lugh's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},
- waist="Sacro Cord",
- legs="Agwu's Slops",
- --feet="Arbatel Loafers +3" --high
- feet="Academic's Loafers +3" --low
- }
- -- Helix Set: Priority INT > Mdmg > Mab, don't put weather stuff in here, helix have natural 100% dmg + from weather --
- sets.midcast.Helix = set_combine(sets.midcast.Elemental, {
- main="Opashoro",
- --sub="Enki Strap",
- sub="Khonsu",
- head="Arbatel Bonnet +3",
- body="Arbatel Gown +3",
- legs="Mallquis Trews +2",
- waist="Acuity Belt +1",
- })
- -- Priority MB > INT > Mdmg > Mab, don't put weather obi here, helix have natural 100% dmg + from weather --
- sets.midcast.Helix.MB = set_combine(sets.midcast.Helix, {
- hands="Agwu's Gages",
- ring1="Mujin Band",
- legs="Agwu's Slops",
- })
- sets.midcast.Helix['Light'] = set_combine(sets.midcast.Helix, {
- main="Daybreak",
- sub="Culminus",
- })
- sets.midcast.Helix['Light'].MB = set_combine(sets.midcast.Helix.MB, {
- main="Daybreak",
- sub="Culminus",
- })
- -- Low Damage set for when you don't want to nuke for very much. Used on T1 nukes and T1 helixes only.
- -- Useful for making skillchains when bosses reflect helix back on you or build resistance based on damage dealt.
- -- Subtle blow is also nice here.
- sets.midcast.Elemental.Low = set_combine(sets.midcast.Recast, {
- main="Warp Cudgel",
- sub="Genmei Shield",
- head="Kaykaus Mitra +1",
- neck="Bathy Choker +1",
- ear1="Dignitary's Earring",
- hands={ name="Telchine Gloves", augments={'Mag. Evasion+25','"Fast Cast"+5','Enh. Mag. eff. dur. +10',}},
- ring1={name="Chirich Ring +1", bag="wardrobe2"},
- ring2={name="Chirich Ring +1", bag="wardrobe4"},
- waist="Ninurta's Sash",
- legs="Assiduity Pants +1",
- feet="Regal Pumps +1"
- })
- sets.midcast.Helix.Low = set_combine(sets.midcast.Elemental.Low, {
- })
- sets.midcast.Kaustra = set_combine(sets.midcast.Elemental, { -- INT -> MaB --
- --main="Opashoro",
- --sub="Enki Strap",
- main="Bunzi's Rod",
- sub="Ammurapi Shield",
- ammo="Ghastly Tathlum +1",
- head="Arbatel Bonnet +3",
- neck="Argute Stole +2",
- ear1="Malignance Earring",
- ear2="Regal Earring",
- body="Arbatel Gown +3",
- hands="Agwu's Gages",
- ring1="Archon Ring",
- ring2="Metamorph Ring +1",
- back={ name="Lugh's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10','Phys. dmg. taken-10%',}},
- waist="Sacro Cord",
- legs="Agwu's Slops",
- feet="Arbatel Loafers +3"
- })
- sets.midcast.Kaustra.MB = set_combine(sets.midcast.Kaustra, {
- body="Agwu's Robe"
- })
- sets.midcast.Kaustra.Weather = set_combine(sets.midcast.Kaustra, { -- Priority: Weather effect -> INT -> MaB --
- waist="Hachirin-no-Obi"
- })
- sets.midcast.Kaustra.MB.Weather = set_combine(sets.midcast.Kaustra.MB, { -- Priority: MB% -> Weather effect -> INT -> MaB --
- waist="Hachirin-no-Obi"
- })
- sets.midcast['Impact'] = set_combine(sets.midcast.Elemental.MB, { -- Make sure to leave the head empty --
- head=empty,
- body="Crepuscular Cloak",
- --hands="Academic's Bracers +3",
- --ring1={name="Stikini Ring +1", bag="wardrobe2"},
- --ring2={name="Stikini Ring +1", bag="wardrobe4"},
- --legs={ name="Chironic Hose", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','Haste+1','MND+10','Mag. Acc.+7','"Mag.Atk.Bns."+11',}},
- --feet="Academic's Loafers +3"
- })
- sets.midcast.Enlightenment = {
- body="Pedagogy Gown +3",
- }
- -- Weaponskills --
- sets.WS = {
- ammo="Oshasha's Treatise",
- head="Nyame Helm",
- neck="Sanctity Necklace",
- ear1="Malignance Earring",
- ear2="Regal Earring",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- ring1="Epaminondas's Ring",
- ring2="Metamorph Ring +1",
- back="Aurist's Cape +1",
- waist="Acuity Belt +1",
- legs="Nyame Flanchard",
- feet="Nyame Sollerets"
- }
- sets.WS['Myrkr'] = set_combine(sets.WS, {
- head="Amalric Coif +1",
- neck="Sanctity Necklace",
- ear1="Gifted Earring",
- ear2="Etiolation Earring",
- body="Academic's Gown +3",
- hands="Academic's Bracers +3",
- ring1="Mephitas's Ring +1",
- ring2="Mephitas's Ring",
- back="Aurist's Cape +1",
- waist="Luminary Sash",
- legs={ name="Amalric Slops +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
- feet="Psycloth Boots"
- })
- sets.WS['Oshala'] = set_combine(sets.WS, {
- neck="Argute Stole +2",
- })
- sets.WS['Shattersoul'] = set_combine(sets.WS, {})
- sets.WS['Omniscience'] = set_combine(sets.WS, {})
- -- /SMN sets
- sets.midcast.BloodPact = {
- head={ name="Helios Band", augments={'Pet: Mag. Acc.+29','"Blood Pact" ability delay -5','Summoning magic skill +8',}},
- legs={ name="Helios Spats", augments={'Pet: Mag. Acc.+25','"Blood Pact" ability delay -5','Summoning magic skill +6',}},
- feet={ name="Helios Boots", augments={'Pet: Mag. Acc.+29','"Blood Pact" ability delay -5','Summoning magic skill +8',}}
- }
- sets.pet_midcast = {}
- sets.pet_midcast.Ward = {
- -- main="Vayuvata III",
- -- sub="Vox Grip",
- -- neck="Incanter's Torque",
- -- ear1="Andoaa Earring",
- -- ear2="Lodurr Earring",
- -- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- -- ring2={name="Stikini Ring +1", bag="wardrobe4"},
- -- waist="Kobo Obi",
- }
- sets.pet_midcast.Rage = {
- }
- ---- Aftercast ----
- sets.aftercast = {
- main="Mpaca's Staff",
- sub="Oneiros Grip",
- ammo="Homiliary",
- head={ name="Chironic Hat", augments={'"Fast Cast"+2','"Refresh"+2','Mag. Acc.+18 "Mag.Atk.Bns."+18',}},
- neck="Loricate Torque +1",
- left_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
- right_ear="Etiolation Earring",
- body="Arbatel Gown +3",
- hands={ name="Chironic Gloves", augments={'Pet: INT+10','AGI+12','"Refresh"+2','Accuracy+6 Attack+6',}},
- ring1={name="Stikini Ring +1", bag="wardrobe2"},
- ring2={name="Stikini Ring +1", bag="wardrobe4"},
- back={ name="Lugh's Cape", augments={'HP+60','Eva.+20 /Mag. Eva.+20','Mag. Evasion+10','"Fast Cast"+10','Phys. dmg. taken-10%',}},
- waist="Carrier's Sash",
- legs={ name="Chironic Hose", augments={'AGI+8','Pet: Mag. Acc.+14','"Refresh"+2','Accuracy+16 Attack+16','Mag. Acc.+15 "Mag.Atk.Bns."+15',}},
- feet={ name="Chironic Slippers", augments={'Pet: INT+6','"Snapshot"+1','"Refresh"+2','Accuracy+12 Attack+12','Mag. Acc.+4 "Mag.Atk.Bns."+4',}},
- }
- sets.aftercast.Sub50 = set_combine(sets.aftercast, { waist="Fucho-no-obi" })
- sets.aftercast.Shiva = set_combine(sets.aftercast, {
- --main="Vourukasha III",
- --sub="Oneiros Grip",
- waist="Avatar Belt",
- })
- sets.aftercast.Siren = set_combine(sets.aftercast, {
- --main="Vayuvata III",
- --sub="Oneiros Grip",
- waist="Avatar Belt",
- })
- sets.aftercast.Garuda = sets.aftercast.Siren
- sets.aftercast.Ramuh = set_combine(sets.aftercast, {
- --main="Apamajas III",
- --sub="Oneiros Grip",
- waist="Avatar Belt",
- })
- sets.aftercast.Pet = set_combine(sets.aftercast, {
- ear2="Evans Earring",
- waist="Avatar Belt",
- legs="Assiduity Pants +1",
- })
- sets.aftercast.Move = set_combine(sets.aftercast, {
- ring2="Shneddick Ring +1"
- })
- sets.aftercast.DT = set_combine(sets.aftercast, {
- main="Bolelabunga",
- sub="Genmei Shield",
- head="Arbatel Bonnet +3",
- hands="Nyame Gauntlets",
- legs="Nyame Flanchard",
- feet="Arbatel Loafers +3"
- })
- sets.aftercast.Kite = set_combine(sets.aftercast.DT, {
- ring2="Shneddick Ring +1",
- })
- sets.aftercast.TP = {
- ammo="Oshasha's Treatise",
- head="Nyame Helm",
- neck="Lissome Necklace",
- ear1="Telos Earring",
- ear2="Crepuscular Earring",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- ring1={name="Chirich Ring +1", bag="wardrobe2"},
- ring2={name="Chirich Ring +1", bag="wardrobe4"},
- back="Aurist's Cape +1",
- waist="Cetl Belt",
- legs="Nyame Flanchard",
- feet="Nyame Sollerets"
- }
- sets.aftercast.Town = set_combine(sets.aftercast, { -- For town --
- --feet="Herald's Gaiters"
- })
- -- Variables
- EnfeeblingMND = S{"Paralyze","Slow","Frazzle","Distract","Addle"}
- EnfeeblingDuration = S{"Sleep","Sleepga","Sleep II","Sleepga II","Bind","Silence","Break"}
- EnfeeblingEle = S{"Burn","Rasp","Drown","Choke","Frost","Shock"}
- NoSwap = S{"Light Arts","Dark Arts","Addendum: White","Addendum: Black","Celerity","Alacrity","Penury","Parsimony","Accession","Manifestation","Rapture","Ebullience","Altruism","Focalization","Tranquility","Equanimity","Perpetuance","Immanence"}
- Immanence = false
- Perpetuance = false
- end
- ---- .::Pretarget Functions::. ---->
- function pretarget(spell,action)
- -- Auto Remedy --
- if AutoRemedy then
- if buffactive['Silence'] or buffactive['Paralysis'] then
- if spell.action_type == 'Magic' or spell.type == 'JobAbility' then
- cancel_spell()
- send_command('input /item "Remedy" <me>')
- end
- end
- end
- -- Do not let me Helix2 on Leshonn/Gartell like an idiot
- if string.find(spell.english, 'helix II') and NoHelixMonsters:contains(spell.target.name) then
- cancel_spell()
- send_command('console_echo "Helix II disabled on Target: '..tostring(spell.target.name)..'"')
- end
- end
- ---- .::Precast Functions::. ---->
- function precast(spell)
- if spell.type=="Item" or NoSwap:contains(spell.name) then
- return
- end
- -- Check for a specific set
- if sets.precast[spell.english] then
- equipSet = sets.precast[spell.english]
- elseif spell.action_type == 'Magic' then
- equipSet = sets.precast.FC
- if WeaponLock and equipSet.WeaponLock then
- equipSet = equipSet.WeaponLock
- end
- equipSet = checkStratagemSets(equipSet)
- if spell.type == 'BlackMagic' and buffactive['Dark Arts'] and equipSet.Grimoire then
- equipSet = equipSet.Grimoire
- elseif spell.type == 'WhiteMagic' and buffactive['Light Arts'] and equipSet.Grimoire then
- equipSet = equipSet.Grimoire
- end
- -- Job Abilities --
- elseif spell.type == 'JobAbility' then
- equipSet = sets.JA[spell.english]
- -- Weaponskills --
- elseif spell.type == 'WeaponSkill' then
- if sets.WS[spell.english] then
- equipSet = sets.WS[spell.english]
- else
- equipSet = sets.WS
- end
- end
- if (equipSet) then
- equip(equipSet)
- end
- end
- ---- .::Midcast Functions::. ---->
- function midcast(spell)
- if spell.name == 'Immanence' then
- Immanence = true
- elseif spell.name == 'Perpetuance' then
- Perpetuance = true
- end
- if spell.type=="Item" or NoSwap:contains(spell.name) then
- return
- end
- -- Everything that has a specific name set --
- if sets.midcast[spell.english] then
- if spell.skill == 'Enhancing' and buffactive[469] then
- equip(sets.midcast[spell.english], gear.Duration_Hands)
- elseif spell.english == 'Stun' and buffactive[363] then
- equip(sets.midcast[spell.english], gear.Alacrity_Feet)
- else
- equip(sets.midcast[spell.english])
- end
- elseif spell.action_type == 'Magic' then
- -- Healing Magic --
- if string.find(spell.english, 'Cure') or string.find(spell.english, 'Cura') then
- if WeaponLock then
- if buffactive[364] then
- equip(sets.midcast.Cure.WeaponLock, gear.Rapture_Head)
- else
- equip(sets.midcast.Cure.WeaponLock)
- end
- elseif spell.element == world.weather_element or spell.element == world.day_element then
- if buffactive[364] then
- equip(sets.midcast.Cure.Weather, gear.Rapture_Head)
- else
- equip(sets.midcast.Cure.Weather)
- end
- elseif buffactive[364] then
- equip(sets.midcast.Cure, gear.Rapture_Head)
- else
- equip(sets.midcast.Cure)
- end
- -- Enhancing Magic --
- elseif spell.skill=="Enhancing Magic" then
- if string.find(spell.english, 'Haste') or string.find(spell.english, 'storm') or string.find(spell.english, 'Reraise') or string.find(spell.english, 'Flurry') or string.find(spell.english, 'Bar') or string.find(spell.english, 'Embrava') or string.find(spell.english, 'Protect') or string.find(spell.english, 'Shell') or string.find(spell.english, 'Adloquium') or string.find(spell.english, 'Animus') then
- if buffactive[469] or Perpetuance then
- if WeaponLock then
- equip(sets.midcast.Enhancing.WeaponLock, gear.Duration_Hands)
- else
- equip(sets.midcast.Enhancing, gear.Duration_Hands)
- end
- else
- equip(sets.midcast.Enhancing)
- end
- elseif string.find(spell.english, 'Refresh') then
- if buffactive[469] or Perpetuance then
- if WeaponLock then
- equip(sets.midcast.Enhancing.WeaponLock, gear.Refresh_Head, gear.Duration_Hands)
- else
- equip(sets.midcast.Enhancing, gear.Refresh_Head, gear.Duration_Hands)
- end
- else
- equip(sets.midcast.Enhancing, gear.Refresh_Head)
- end
- elseif string.find(spell.english, 'Regen') then
- equipSet = sets.midcast.Regen
- if RegenPotency and equipSet["Potency"] then
- equipSet = equipSet["Potency"]
- end
- if buffactive[469] or Perpetuance then
- equip(equipSet, gear.Duration_Hands)
- else
- equip(equipSet)
- end
- else
- if buffactive[469] or Perpetuance then
- equip(sets.midcast.Enhancing, gear.Duration_Hands)
- else
- equip(sets.midcast.Enhancing)
- end
- end
- if Perpetuance then
- Perpetuance = false
- end
- -- Enfeebling Magic --
- elseif spell.skill=="Enfeebling Magic" then
- if EnfeeblingDuration:contains(spell.name) then
- equip(sets.midcast.Enfeebling.Duration)
- elseif EnfeeblingEle:contains(spell.name) then
- equip(sets.midcast.Enfeebling.Ele)
- elseif EnfeeblingMND:contains(spell.name) then
- equip(sets.midcast.Enfeebling.MND)
- elseif spell.type=="BlackMagic" then
- equip(sets.midcast.Enfeebling.INT)
- else
- equip(sets.midcast.Enfeebling)
- end
- -- Dark Magic --
- elseif spell.skill == 'Dark Magic' then
- if spell.english == 'Stun' then
- if buffactive[363] then
- equip(sets.midcast['stun'], gear.Alacrity_Feet)
- else
- equip(sets.midcast[spell.english])
- end
- elseif string.find(spell.english, 'Aspir') or string.find(spell.english, 'Drain') then
- equip(sets.midcast.Aspir)
- elseif spell.english == 'Kaustra' then
- if MagicBurst then
- if spell.element == world.weather_element or spell.element == world.day_element then
- if buffactive[407] then
- equip(sets.midcast.Kaustra.MB.Weather, gear.Klimaform_Feet)
- else
- equip(sets.midcast.Kaustra.MB.Weather)
- end
- else
- equip(sets.midcast.Kaustra.MB)
- end
- elseif spell.element == world.weather_element or spell.element == world.day_element then
- if buffactive[407] then
- equip(sets.midcast.Kaustra.Weather, gear.Klimaform_Feet)
- else
- equip(sets.midcast.Kaustra.Weather)
- end
- else
- equip(sets.midcast.Kaustra)
- end
- else
- equip(sets.midcast.Dark)
- end
- -- Elemental Magic --
- elseif spell.skill == 'Elemental Magic' then
- equipSet = sets.midcast.Elemental
- if VagaryMode and not buffactive['Immanence'] and not Immanence then
- equipSet = sets.midcast.Elemental.Vagary
- elseif string.find(spell.english, 'helix') then
- equipSet = sets.midcast.Helix
- end
- -- Conditional subsets
- if LowDmg and equipSet.Low and not string.find(spell.english, 'II') and not string.find(spell.english, 'V') then
- equipSet = equipSet.Low
- end
- if equipSet[spell.element] then
- equipSet = equipSet[spell.element]
- end
- if OccultMode and equipSet.Occult then
- equipSet = equipSet.Occult
- end
- if MagicBurst and equipSet.MB then
- equipSet = equipSet.MB
- end
- if (spell.element == world.weather_element or spell.element == world.day_element) and equipSet.Weather then
- equipSet = equipSet.Weather
- end
- equipSet = checkStratagemSets(equipSet)
- equip(equipSet)
- -- Klimaform feet check
- if spell.element == world.weather_element or spell.element == world.day_element and buffactive[407] then
- equip(gear.Klimaform_Feet)
- end
- -- Check for element-specific nuking pieces
- if gear[spell.element] then
- equip(gear[spell.element])
- end
- if Immanence then
- Immanence = false
- end
- elseif spell.type=="BloodPactWard" or spell.type=="BloodPactRage" then
- equip(sets.midcast.BloodPact)
- -- Everything else that doesn't have a specific set for it --
- else
- equip(sets.midcast.Recast)
- end
- end
- -- Treasure Hunter
- if TreasureHunter and THSpells:contains(spell.name) then
- equip(sets.TH)
- end
- -- Auto-cancel existing buffs
- if spell.name=="Stoneskin" and buffactive["Stoneskin"] then
- windower.send_command('cancel 37;')
- elseif spell.name=="Sneak" and buffactive["Sneak"] and spell.target.type=="SELF" then
- windower.send_command('cancel 71;')
- elseif spell.name=="Utsusemi: Ichi" and buffactive["Copy Image"] then
- windower.send_command('wait 1;cancel 66;')
- end
- end
- ---- .::Aftercast Sets::. ---->
- function aftercast(spell,action)
- if spell.type=="Item" or NoSwap:contains(spell.name) then
- return
- end
- idle()
- end
- function pet_midcast(spell)
- if spell.type=="BloodPactWard" then
- equip(sets.pet_midcast.Ward)
- elseif spell.type=="BloodPactRage" then
- equip(sets.pet_midcast.Rage)
- end
- end
- function pet_aftercast()
- if not midaction() then
- idle()
- end
- end
- ---- .::Status Changes Functions::. ---->
- function status_change(new,tab,old)
- idle()
- end
- function pet_change(pet,gain)
- if not midaction() and not pet_midaction() then
- idle()
- end
- end
- --- ..::Self Commands functions::.. --->
- function self_command(command)
- for _, v in ipairs(IdleModes) do
- if command:lower()==v:lower() then
- IdleMode = v
- send_command('console_echo "Idle Mode: ['..IdleMode..']"')
- idle()
- return
- end
- end
- if command:lower()=="magicburst" then
- MagicBurst = MagicBurst==false
- send_command('console_echo "Magic Burst Set: '..tostring(MagicBurst)..'"')
- elseif command == "ToggleIdle" then
- if IdleMode=="Kite" then
- IdleMode = "DT"
- elseif IdleMode=="DT" then
- IdleMode = "Refresh"
- elseif IdleMode=="Refresh" then
- IdleMode = "Move"
- else
- IdleMode = "Kite"
- end
- send_command('console_echo "Idle Mode: '..IdleMode..'"')
- elseif command:lower()=='weaponlock' then
- WeaponLock = WeaponLock==false
- send_command('console_echo "Weapon Lock: '..tostring(WeaponLock)..'"')
- if WeaponLock then
- --equip({main="Opashoro", sub="Enki Strap"})
- equip({main="Opashoro", sub="Khonsu"})
- disable('main', 'sub', 'range')
- else
- enable('main', 'sub', 'range')
- end
- elseif command:lower()=="th" then
- TreasureHunter = TreasureHunter==false
- send_command('console_echo "Treasure Hunter Mode: '..tostring(TreasureHunter)..'"')
- elseif command:lower()=="low" then
- LowDmg = LowDmg==false
- send_command('console_echo "Low Damage T1 Set: '..tostring(LowDmg)..'"')
- elseif command:lower()=="occult" then
- OccultMode = OccultMode==false
- send_command('console_echo "Occult Acumen Mode: '..tostring(OccultMode)..'"')
- elseif command:lower()=="regen" then
- RegenPotency = RegenPotency==false
- send_command('console_echo "Regen Potency Mode: '..tostring(RegenPotency)..'"')
- elseif command:lower()=="vagary" then
- VagaryMode = VagaryMode==false
- send_command('console_echo "Vagary Mode: '..tostring(VagaryMode)..'"')
- elseif command:lower()=="lightart" then
- send_command('input /ja "Light Arts" <me>;input /ja "Addendum: White" <me>')
- elseif command:lower()=="darkart" then
- send_command('input /ja "Dark Arts" <me>;input /ja "Addendum: Black" <me>')
- end
- idle()
- end
- -- Automatically changes Idle gears if you zone in or out of town --
- windower.register_event('zone change', function()
- idle()
- end)
- -- Will make gears change the seconds you use Sublimation or the second it gets completed --
- function buff_change(buff,gain)
- if midaction() then
- return
- end
- if buff=="Sneak" or buff=="Invisible" or buff=="Sublimation: Activated" then
- idle()
- end
- end
- function idle()
- --if TownIdle:contains(world.area:lower()) then
- -- return
- --end
- equipSet = sets.aftercast
- if IdleMode=='Auto' then
- if player.mpp < 50 then
- equipSet = sets.aftercast.Sub50
- else
- equipSet = sets.aftercast.DT
- end
- elseif equipSet[IdleMode] then
- equipSet = equipSet[IdleMode]
- end
- if pet.isvalid then
- if equipSet[pet.name] then
- equipSet = equipSet[pet.name]
- elseif equipSet["Pet"] then
- equipSet = equipSet["Pet"]
- end
- end
- if player.mpp < 50 and equipSet['Sub50'] then
- equipSet = equipSet['Sub50']
- end
- equip(equipSet)
- if buffactive['Sneak'] or buffactive['Invisible'] or buffactive["Bolter's Roll"] then
- equip({ring2="Shneddick Ring +1"})
- end
- end
- function checkStratagemSets(equipSet)
- if (equipSet) then
- if (buffactive['Immanence'] or Immanence) and equipSet['Immanence'] then
- equipSet = equipSet['Immanence']
- elseif (buffactive['Perpetuance'] or Perpetuance) and equipSet['Perpetuance'] then
- equipSet = equipSet['Perpetuance']
- end
- end
- return equipSet
- end
Add Comment
Please, Sign In to add comment