Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- include('organizer-lib.lua')
- -------------------------------------------------------------------------------------------------------------------
- -- Setup functions for this job. Generally should not be modified.
- -------------------------------------------------------------------------------------------------------------------
- -- Initialization function for this job file.
- 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()
- 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('None', 'Normal', 'Acc')
- state.WeaponskillMode:options('Normal', 'Acc')
- state.CastingMode:options('Normal', 'Resistant', 'CMP', 'OccultAcumen', 'MagicBurst')
- state.IdleMode:options('Normal', 'PDT', 'MDT')
- MagicBurstIndex = 0
- state.MagicBurst = M(false, 'Magic Burst')
- state.ConsMP = M(false, 'Seidr Cotehardie')
- state.Occult = M(false, 'Occult Mode')
- send_command('bind ^` gs c toggle MagicBurst')
- send_command('bind !` gs c toggle ConsMP')
- send_command('bind ^= gs c toggle Occult')
- 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 !`')
- end
- -- Define sets and vars used by this job file.
- function init_gear_sets()
- --------------------------------------
- -- Start defining the sets
- --------------------------------------
- MdmgHead ={name="Merlinic Hood", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','"Conserve MP"+4','INT+14','Mag. Acc.+15','"Mag.Atk.Bns."+12',}}
- MaccHead ={name="Merlinic Hood", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','"Conserve MP"+4','INT+14','Mag. Acc.+15','"Mag.Atk.Bns."+12',}}
- MaccBody = {name="Merlinic Jubbah", augments={'Mag. Acc.+30','"Drain" and "Aspir" potency +7','INT+12',}}
- MaccLegs ={name="Merlinic Shalwar", augments={'Mag. Acc.+18 "Mag.Atk.Bns."+18','Magic burst dmg.+2%','INT+5','Mag. Acc.+14',}}
- MaccFeet = {name="Merlinic Crackows", augments={'Mag. Acc.+22 "Mag.Atk.Bns."+22','Magic burst dmg.+11%','MND+10','Mag. Acc.+9',}}
- FCHead = {name="Merlinic Hood", augments={'"Fast Cast"+7'}}
- FCBody= {name="Merlinic Jubbah", augments={'"Fast Cast"+7'}}
- FCLegs = {name="Kaykaus Tights +1"}
- FCFeet = {name="Merlinic Crackows", augments={'"Fast Cast"+7'}}
- FCBack = {name="Lugh's Cape", augments={'"Fast Cast"+10'}}
- -- Precast Sets
- -- Precast sets to enhance JAs
- sets.precast.JA = {}
- sets.precast.JA.Enlightenment = {body="Peda. Gown +1"}
- sets.precast.JA['Tabula Rasa'] = {legs="Pedagogy Pants +1"}
- sets.enh = {}
- sets.enh.Klimaform = {feet="Arbatel Loafers +1"}
- sets.enh.Perpetuance = {hands="Arbatel Bracers +1"}
- sets.Max_MP = {
- main="Hvergelmir",
- sub="Niobid Strap",
- ammo="Strobilus",
- head={ name="Amalric Coif +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
- body={ name="Weather. Robe +1", augments={'MP+120',}},
- hands={ name="Otomi Gloves", augments={'HP+30','MP+30','MP+30',}},
- legs={ name="Amalric Slops +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
- feet={ name="Amalric Nails +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
- neck="Dualism Collar +1",
- waist="Shinjutsu-no-Obi +1",
- left_ear="Evans Earring",
- right_ear="Etiolation Earring",
- left_ring="Mephitas's Ring +1",
- right_ring="Mephitas's Ring",
- }
- sets.precast.FC.Impact = set_combine(sets.precast.FC, {head=empty,body="Twilight Cloak"})
- sets.precast.FC = {
- main="Hvergelmir",
- sub="Clerisy Strap +1",
- ammo="Impatiens",
- head="Amalric Coif +1",
- body=FCBody,
- hands="Academic's Bracers +3",
- legs={ name="Amalric Slops +1", augments={'MP+80','Mag. Acc.+20','"Mag.Atk.Bns."+20',}},
- feet="Amalric Nails +1",
- neck="Orunmila's Torque",
- waist="Witful Belt",
- right_ear="Evans Earring",
- left_ear="Etiolation Earring",
- left_ring="Kishar Ring",
- right_ring="Lebeche Ring",
- back="Perimede Cape",
- }
- sets.precast.FC['Tupsimati'] = {
- ammo="Impatiens",
- head=FCHead,
- body=FCBody,
- hands="Academic's Bracers +3",
- legs=FCLegs,
- feet=FCFeet,
- neck="Orunmila's Torque",
- waist="Witful Belt",
- left_ear="Enchntr. Earring +1",
- right_ear="Loquac. Earring",
- left_ring="Kishar Ring",
- right_ring="Rahab Ring",
- back=FCBack,
- }
- sets.precast.FC['Khatvanga'] = {
- ammo="Impatiens",
- head=FCHead,
- body=FCBody,
- hands="Academic's Bracers +3",
- legs=FCLegs,
- feet=FCFeet,
- neck="Orunmila's Torque",
- waist="Witful Belt",
- left_ear="Enchntr. Earring +1",
- right_ear="Loquac. Earring",
- left_ring="Kishar Ring",
- right_ring="Rahab Ring",
- back=FCBack,
- }
- sets.precast.Grimoire = {feet="Acad. Loafers +3"}
- -- Weaponskill sets
- -- Default set for any weaponskill that isn't any more specifically defined
- sets.precast.WS = set_combine(sets.engaged,{
- ammo="Hasty Pinion +1",
- head="Jhakri Coronal +1",
- neck="Fotia Gorget",
- ear1="Moonshade Earring",
- ear2="Telos Earring",
- body={name="Telchine Chasuble", augments={'"Store TP" +5'}},
- hands="Jhakri Cuffs +2",
- ring1="Shiva Ring +1",
- ring2="Shiva Ring +1",
- back="Lugh's Cape",
- waist="Fotia Belt",
- legs="Jhakri Slops +2",
- feet="Jhakri Pigaches +2"})
- sets.precast.WS['Myrkr'] = set_combine(sets.Max_MP,{
- ear2="Moonshade Earring",
- })
- sets.precast.WS['Omniscience'] = {
- ammo="Pemphredo Tathlum",
- head="Pixie Hairpin +1",
- neck="Saevus Pendant +1",
- ear2="Regal Earring",
- ear1="Ishvara Earring",
- body="Amalric Doublet +1",
- hands="Jhakri Cuffs +2",
- ring1="Stikini Ring +1",
- ring2="Archon Ring",
- back={ name="Lugh's Cape", augments={'INT+20','Accuracy+20 Attack+20','INT+10','Weapon skill damage +10%',}},
- waist="Eschan Stone",
- legs="Amalric Slops +1",
- feet="Amalric Nails +1"
- }
- sets.precast.WS['Cataclysm'] = {
- ammo="Pemphredo Tathlum",
- head="Pixie Hairpin +1",
- neck="Fotia Gorget",
- ear1="Moonshade Earring",
- ear2="Ishvara Earring",
- body="Amalric Doublet +1",
- hands="Jhakri Cuffs +2",
- ring1="Shiva Ring +1",
- ring2="Archon Ring",
- back={ name="Lugh's Cape", augments={'INT+20','Accuracy+20 Attack+20','INT+10','Weapon skill damage +10%',}},
- waist="Fotia Belt",
- legs="Amalric Slops +1",
- feet="Amalric Nails +1"
- }
- -- Midcast Sets
- sets.midcast = {}
- sets.midcast['Elemental Magic'] = {
- main="Tupsimati",
- sub="Enki Strap",
- ammo="Pemphredo Tathlum",
- head={ name="Merlinic Hood", augments={'Mag. Acc.+23 "Mag.Atk.Bns."+23','"Conserve MP"+4','INT+14','Mag. Acc.+15','"Mag.Atk.Bns."+12',}},
- neck="Saevus Pendant +1",
- ear1="Barkarole Earring",
- ear2="Regal Earring",
- body="Amalric Doublet +1",
- hands="Amalric Gages +1",
- ring1="Shiva Ring +1",
- ring2="Shiva Ring +1",
- back={ name="Lugh's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','INT+10','"Mag.Atk.Bns."+10',}},
- waist="Eschan Stone",
- legs="Amalric Slops +1",
- feet="Amalric Nails +1",
- }
- sets.midcast['Elemental Magic'].Resistant = set_combine(sets.midcast['Elemental Magic'], {
- neck="Sanctity Necklace",
- body="Academic's Gown +3"
- })
- sets.midcast['Elemental Magic'].CMP = set_combine(sets.midcast['Elemental Magic'], {
- body="Seidr Cotehardie",
- })
- sets.midcast['Elemental Magic'].Occult = set_combine(sets.midcast['Elemental Magic'], {
- ammo="Seraphic Ampulla",
- head="Mallquis Chapeau +1",
- legs="Perdition Slops",
- waist="Oneiros Rope"
- })
- sets.midcast['Elemental Magic'].MagicBurst = set_combine(sets.midcast['Elemental Magic'], {
- main={ name="Akademos", augments={'INT+15','"Mag.Atk.Bns."+15','Mag. Acc.+15',}},
- head={ name="Merlinic Hood", augments={'Mag. Acc.+21 "Mag.Atk.Bns."+21','Magic burst dmg.+5%','INT+7','Mag. Acc.+15','"Mag.Atk.Bns."+14',}},
- neck="Mizukage-no-Kubikazari",
- lear="Static Earring",
- lring="Mujin Band",
- feet={name="Merlinic Crackows", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','Magic burst dmg.+8%','INT+10','Mag. Acc.+1','"Mag.Atk.Bns."+11',}},
- })
- sets.midcast.Impact = set_combine(sets.midcast['Elemental Magic'].Occult, {head=empty,body="Twilight Cloak",neck="Combatant's Torque"})
- sets.midcast.Helix = sets.midcast['Elemental Magic']
- sets.midcast.Helix.Resistant = sets.midcast['Elemental Magic'].Resistant
- sets.midcast.Helix.Occult = sets.midcast['Elemental Magic']
- sets.midcast.Helix.MagicBurst = set_combine(sets.midcast['Elemental Magic'].MagicBurst, {
- main="Tupsimati",
- })
- sets.midcast['Dark Magic'] = {
- ammo="Strobilus",
- head="Pixie Hairpin +1",
- body={ name="Helios Jacket", augments={'Mag. Acc.+22','"Drain" and "Aspir" potency +10','MP+21',}},
- hands={ name="Helios Gloves", augments={'Mag. Acc.+20 "Mag.Atk.Bns."+20','"Drain" and "Aspir" potency +10','MP+35',}},
- legs="Helios Spats",
- feet={ name="Merlinic Crackows", augments={'Mag. Acc.+27','"Drain" and "Aspir" potency +11','INT+4','"Mag.Atk.Bns."+3',}},
- neck="Erra Pendant",
- waist="Fucho-no-Obi",
- ear2="Regal Earring",
- ear1="Hirudinea Earring",
- left_ring="Archon Ring",
- right_ring="Evanescence Ring",
- back={ name="Lugh's Cape", augments={'MP+60','Mag. Acc+20 /Mag. Dmg.+20','MP+20','"Fast Cast"+10',}},
- }
- sets.midcast.Stun = {
- main="Hvergelmir",
- sub="Clerisy Strap +1",
- ammo="Incantor Stone",
- head="Peda. M.Board +1",
- feet="Acad. Loafers +3",
- main="Hvergelmir",
- sub="Clerisy Strap +1",
- body="Academic's Gown +3",
- hands="Academic's Bracers +3",
- legs="Psycloth Lappas",
- neck="Erra Pendant",
- waist="Luminary Sash",
- left_ear="Gwati Earring",
- right_ear="Regal Earring",
- left_ring="Stikini Ring +1",
- right_ring="Stikini Ring +1",
- back=FCBack,
- }
- sets.midcast['Enfeebling Magic'] = {
- main="Tupsimati",
- sub="Enki Strap",
- ammo="Pemphredo Tathlum",
- head="Acad. Mortar. +2",
- body="Acad. Gown +3",
- hands="Acad. Bracers +3",
- legs="Acad. Pants +2",
- feet="Acad. Loafers +3",
- neck="Erra Pendant",
- waist="Luminary Sash",
- left_ear="Barkaro. Earring",
- right_ear="Regal Earring",
- left_ring="Stikini Ring +1",
- right_ring="Stikini Ring +1",
- back={ name="Lugh's Cape", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Mag.Atk.Bns."+10',}},
- }
- sets.midcast['Enfeebling Magic'].Resistant = set_combine(sets.midcast['Enfeebling Magic'], {
- })
- sets.midcast['Healing Magic'] = {
- main="Hvergelmir",
- sub="Clerisy Strap +1",
- ammo="Hydrocera",
- head={ name="Kaykaus Mitra +1", augments={'MP+80','"Cure" spellcasting time -7%','Enmity-6',}},
- body={ name="Kaykaus Bliaut +1", augments={'MP+80','"Cure" spellcasting time -7%','Enmity-6',}},
- hands={ name="Kaykaus Cuffs +1", augments={'MP+80','MND+12','Mag. Acc.+20',}},
- legs={ name="Kaykaus Tights +1", augments={'MP+80','"Cure" spellcasting time -7%','Enmity-6',}},
- feet={ name="Kaykaus Boots +1", augments={'MP+80','"Cure" spellcasting time -7%','Enmity-6',}},
- neck="Incanter's Torque",
- waist="Bishop's Sash",
- left_ear="Beatific Earring",
- right_ear="Regal Earring",
- left_ring="Lebeche Ring",
- right_ring="Janniston Ring +1",
- back="Tempered Cape +1",
- }
- sets.midcast['Enhancing Magic'] = {
- main={ name="Gada", augments={'Enh. Mag. eff. dur. +6',}},
- sub={name="Ammurapi Shield", priority=7},
- ammo="Savant's Treatise",
- head={ name="Telchine Cap", augments={'Accuracy+14 Attack+14','"Store TP"+6','Enh. Mag. eff. dur. +10',}},
- body={ name="Telchine Chas.", augments={'DEF+16','Enh. Mag. eff. dur. +10',}},
- neck="Incanter's Torque",
- ear1="Augmenting Earring",
- ear2="Andoaa Earring",
- hands={name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +10'}},
- ring1="Stikini ring +1",
- ring2="Stikini Ring +1",
- back="Perimede Cape",
- waist="Olympus Sash",
- legs={name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +10'}},
- feet={name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +10'}}
- }
- sets.midcast.Embrava = sets.midcast['Enhancing Magic']
- -- regen defaults to Duration, Can swap to potency
- sets.midcast.Regen = set_combine(sets.midcast['Enhancing Magic'], {
- head="Arbatel Bonnet +1",
- back=FCBack,
- })
- sets.midcast.RegenPotency = set_combine(sets.midcast['Enhancing Magic'], {
- main="Bolelabunga",
- head="Arbatel Bonnet +1",
- back="Bookworm's Cape",
- })
- sets.midcast.Cure = sets.midcast['Healing Magic']
- sets.midcast.CurePotencyRecieved = set_combine(sets.midcast.Cure, {waist="Gishdubar Sash"})
- sets.midcast.RefreshRecieved = set_combine(sets.midcast['Enhancing Magic'], {head="Amalric Coif +1",back="Grapevine Cape",waist="Gishdubar Sash",feet="Inspirited Boots"})
- sets.midcast.Stoneskin = set_combine(sets.midcast['Enhancing Magic'],{
- neck="Nodens Gorget",
- legs="Shedir Seraweels",
- lear="Earthcry Earring",
- waist="Siegel Sash"
- })
- sets.midcast.Phalanx = set_combine(sets.midcast['Enhancing Magic'],{
- hands={ name="Merlinic Dastanas", augments={'"Cure" potency +2%','Pet: "Dbl.Atk."+1 Pet: Crit.hit rate +1','Phalanx +5','Mag. Acc.+17 "Mag.Atk.Bns."+17',}},
- })
- sets.midcast.Aquaveil = set_combine(sets.midcast['Enhancing Magic'],{
- head="Amalric Coif +1",
- waist="Emphatikos Rope",
- legs="Shedir Seraweels",
- })
- -- Idle sets
- sets.idle = {
- main={ name="Akademos", augments={'INT+15','"Mag.Atk.Bns."+15','Mag. Acc.+15',}},
- sub="Oneiros Grip",
- ammo="Homiliary",
- head={ name="Spurrina Coif", augments={'"Refresh"+2',}},
- body="Jhakri Robe +2",
- hands={ name="Chironic Gloves", augments={'Attack+8','DEX+4','"Refresh"+1','Accuracy+11 Attack+11',}},
- legs="Assid. Pants +1",
- feet="Mallquis Clogs +1",
- neck="Loricate Torque +1",
- waist="Slipor Sash",
- left_ear="Etiolation Earring",
- right_ear={ name="Darkness Earring", augments={'Phys. dmg. taken -2%','"Resist Poison"+2',}},
- left_ring="Stikini Ring +1",
- right_ring="Stikini Ring +1",
- back="Moonbeam Cape",
- }
- sets.idle.PDT = set_combine(sets.idle,{
- main="Terra's Staff",
- sub="Mensch Strap +1",
- ammo="Staunch Tathlum +1",
- lring="Defending Ring"
- })
- sets.idle.PDT['Tupsimati'] = set_combine(sets.idle,{
- ammo="Staunch Tathlum",
- head={ name="Merlinic Hood", augments={'Phys. dmg. taken -5%','"Mag.Atk.Bns."+14',}},
- neck="Loricate Torque +1",
- ear1="Etiolation Earring",
- ear2="Darkness Earring",
- body="Hagondes Coat +1",
- hands="Hagondes Cuffs +1",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Moonbeam Cape",
- waist="Slipor Sash",
- legs={ name="Artsieq Hose", augments={'"Mag.Atk.Bns." +25', "Mag. Evasion+10", "Phys. dmg. taken -5%"}},
- })
- sets.idle.PDT['Khatvanga'] = set_combine(sets.idle,{
- ammo="Staunch Tathlum",
- head={ name="Merlinic Hood", augments={'Phys. dmg. taken -5%','"Mag.Atk.Bns."+14',}},
- neck="Loricate Torque +1",
- ear1="Etiolation Earring",
- ear2="Darkness Earring",
- body="Hagondes Coat +1",
- hands="Hagondes Cuffs +1",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Moonbeam Cape",
- waist="Slipor Sash",
- legs={ name="Artsieq Hose", augments={'"Mag.Atk.Bns." +25', "Mag. Evasion+10", "Phys. dmg. taken -5%"}},
- })
- sets.idle.PDT['Akademos'] = set_combine(sets.idle,{
- ammo="Staunch Tathlum",
- head={ name="Merlinic Hood", augments={'Phys. dmg. taken -5%','"Mag.Atk.Bns."+14',}},
- neck="Loricate Torque +1",
- ear1="Etiolation Earring",
- ear2="Darkness Earring",
- body="Hagondes Coat +1",
- hands="Hagondes Cuffs +1",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Moonbeam Cape",
- waist="Slipor Sash",
- legs={ name="Artsieq Hose", augments={'"Mag.Atk.Bns." +25', "Mag. Evasion+10", "Phys. dmg. taken -5%"}},
- })
- sets.idle.PDT['Hvergelmir'] = set_combine(sets.idle,{
- ammo="Staunch Tathlum",
- head={ name="Merlinic Hood", augments={'Phys. dmg. taken -5%','"Mag.Atk.Bns."+14',}},
- neck="Loricate Torque +1",
- ear1="Etiolation Earring",
- ear2="Darkness Earring",
- body="Hagondes Coat +1",
- hands="Hagondes Cuffs +1",
- ring1="Dark Ring",
- ring2="Defending Ring",
- back="Moonbeam Cape",
- waist="Slipor Sash",
- legs={ name="Artsieq Hose", augments={'"Mag.Atk.Bns." +25', "Mag. Evasion+10", "Phys. dmg. taken -5%"}},
- })
- sets.idle.Sublimation = set_combine(sets.idle,{
- head="Academic's Mortboard +2",
- })
- sets.Kiting = {feet="Herald's Gaiters"}
- sets.latent_refresh = {waist="Fucho-no-obi"}
- sets.Obi = {waist='Hachirin-no-Obi'}
- -- 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="Yetshila +1",
- head={ name="Chironic Hat", augments={'Pet: STR+12','Crit.hit rate+3','Quadruple Attack +2','Accuracy+15 Attack+15',}},
- body="Taeon Tabard",neck="Anu Torque",ear1="Suppanomimi",ear2="Eabani Earring",
- hands={ name="Chironic Gloves", augments={'Pet: Mag. Acc.+9 Pet: "Mag.Atk.Bns."+9','Attack+25','Quadruple Attack +2','Accuracy+4 Attack+4',}},
- ring1="Hetairoi Ring",ring2="Petrov Ring",
- back={ name="Sucellos's Cape", augments={'DEX+20','Accuracy+20 Attack+20','"Dual Wield"+10',}},
- waist="Goading Belt",legs="Taeon Tights",
- feet={ name="Chironic Slippers", augments={'"Triple Atk."+3','INT+14','Accuracy+7 Attack+7','Mag. Acc.+9 "Mag.Atk.Bns."+9',}},}
- sets.engaged.Acc = set_combine(sets.engaged,{
- head="Carmine Mask +1",neck="Combatant's Torque",ring2="Ramuh Ring +1"})
- sets.engaged.HighAcc = set_combine(sets.engaged.Acc,{
- ammo="Amar Cluster",ring1="Ramuh Ring +1",legs="Carmine Cuisses +1"})
- sets.engaged.MaxAcc = set_combine(sets.engaged.HighAcc,{
- ammo="Hasty Pinion +1",body="Ayanmo Corazza +1",hands="Aya. Manopolas +1",ring1="Ramuh Ring +1",waist="Reiki Yotai"})
- sets.engaged.HighHaste = {ammo="Yetshila +1",
- head={ name="Chironic Hat", augments={'Pet: STR+12','Crit.hit rate+3','Quadruple Attack +2','Accuracy+15 Attack+15',}},
- neck="Anu Torque",ear1="Sherida Earring",ear2="Telos Earring",
- body="Taeon Tabard",hands={ name="Chironic Gloves", augments={'Pet: Mag. Acc.+9 Pet: "Mag.Atk.Bns."+9','Attack+25','Quadruple Attack +2','Accuracy+4 Attack+4',}},
- ring1="Hetairoi Ring",ring2="Petrov Ring",
- back={ name="Sucellos's Cape", augments={'DEX+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}},
- waist="Reiki Yotai",legs="Taeon Tights",
- feet={ name="Chironic Slippers", augments={'"Triple Atk."+3','INT+14','Accuracy+7 Attack+7','Mag. Acc.+9 "Mag.Atk.Bns."+9',}},
- }
- sets.engaged.Acc.HighHaste = set_combine(sets.engaged.HighHaste,{
- head="Carmine Mask +1",neck="Combatant's Torque"})
- sets.engaged.HighAcc.HighHaste = set_combine(sets.engaged.Acc.HighHaste,{
- ear1="Mache Earring +1",ring2="Ramuh Ring +1",legs="Carmine Cuisses +1"})
- sets.engaged.MaxAcc.HighHaste = set_combine(sets.engaged.HighAcc.HighHaste,{
- ammo="Amar Cluster",body="Ayanmo Corazza +1",hands="Aya. Manopolas +1",ring1="Ramuh Ring +1",waist="Olseni Belt",feet="Aya. Gambieras +1"})
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for standard casting events.
- -------------------------------------------------------------------------------------------------------------------
- function job_precast(spell, action, spellMap, eventArgs)
- if spell.name == 'Impact' then
- equip({head=empty,body="Twilight Cloak"})
- elseif spell.name == 'Stun' then
- if not buffactive['Thunderstorm'] then
- add_to_chat(8,'--------- Thunderstorm is down ---------')
- elseif not buffactive['Klimaform'] then
- add_to_chat(8,'----------- Klimaform is down -----------')
- end
- end
- if spell.action_type == 'Magic' then
- classes.CustomClass = player.equipment.main
- if (buffactive['Dark Arts'] or buffactive['Addendum: Black']) and (spell.skill == "Elemental Magic" or spell.skill == "Dark Magic" or spell.skill == "Enfeebling Magic") then
- equip(sets.precast.FC,{head="Pedagogy Mortarboard +1",feet="Academic's Loafers +3"})
- elseif (buffactive['Light Arts'] or buffactive['Addendum: White']) and (spell.skill == "Healing Magic" or spell.skill == "Divine Magic" or spell.skill == "Enfeebling Magic" or spell.skill == "Enhancing Magic") then
- equip(sets.precast.FC,{head="Pedagogy Mortarboard +1",feet="Academic's Loafers +3"})
- end
- if (buffactive['Alacrity'] or buffactive['Celerity']) and world.weather_element == spell.element then
- equip({feet='Pedagogy Loafers +1'})
- end
- 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 buffactive['Light Arts'] or buffactive['Addendum: White'] then
- if spell.english == "Light Arts" and not buffactive['Addendum: White'] then
- cancel_spell()
- send_command('input /ja "Addendum: White" <me>')
- elseif spell.english == "Manifestation" then
- cancel_spell()
- send_command('input /ja "Accession" <me>')
- elseif spell.english == "Alacrity" then
- cancel_spell()
- send_command('input /ja "Celerity" <me>')
- elseif spell.english == "Parsimony" then
- cancel_spell()
- send_command('input /ja "Penury" <me>')
- elseif spell.english == "Immanence" then
- cancel_spell()
- send_command('input /ja "Perpetuance" <me>')
- elseif spell.english == "Focalization" then
- cancel_spell()
- send_command('input /ja "Altruism" <me>')
- end
- elseif buffactive['Dark Arts'] or buffactive['Addendum: Black'] then
- if spell.english == "Dark Arts" and not buffactive['Addendum: Black'] then
- cancel_spell()
- send_command('input /ja "Addendum: Black" <me>')
- elseif spell.english == "Accession" then
- cancel_spell()
- send_command('input /ja "Manifestation" <me>')
- elseif spell.english == "Celerity" then
- cancel_spell()
- send_command('input /ja "Alacrity" <me>')
- elseif spell.english == "Penury" then
- cancel_spell()
- send_command('input /ja "Parsimony" <me>')
- elseif spell.english == "Perpetuance" then
- cancel_spell()
- send_command('input /ja "Immanence" <me>')
- elseif spell.english == "Altruism" then
- cancel_spell()
- send_command('input /ja "Focalization" <me>')
- end
- end
- end
- function job_post_midcast(spell)
- if spell.skill == 'Healing Magic' then
- if Cures:contains(spell.name) then
- if world.day =='Lightsday' or world.weather_element == 'Light' or buffactive == 'Aurorastorm' then
- equip(sets.Obi)
- end
- end
- elseif spell.skill == 'Enhancing Magic' then
- if spell.english == 'Embrava' then
- if not buffactive.perpetuance then
- add_to_chat(8,'--------- Perpetuance is down ---------')
- end
- if not buffactive.accession then
- add_to_chat(8,'--------- Accession is down ---------')
- end
- if not buffactive.penury then
- add_to_chat(8,'--------- Penury is down ---------')
- end
- end
- if buffactive['Penury'] then equip(sets.enh.Penury) end
- if buffactive['Perpetuance'] then equip(sets.enh.Perpetuance) end
- elseif spell.skill == 'Elemental Magic' then
- if state.Occult.value then
- equip(sets.Occult)
- end
- if state.MagicBurst.value then
- equip(sets.magic_burst)
- end
- if state.ConsMP.value then
- equip(sets.ConsMP)
- end
- if spell.element == world.day_element or spell.element == world.weather_element then
- if string.find(spell.english,'helix') then
- equip(sets.midcast.Helix)
- else
- equip(sets.Obi)
- end
- end
- if buffactive['Klimaform'] then
- equip(sets.enh.Klimaform)
- end
- if spell.english == 'Impact' then
- equip(sets.midcast[spell.skill],{head=empty,body="Twilight Cloak"})
- end
- end
- end
- function self_command(command)
- if command == 'StoneMode' then
- WeatherIndex = 1
- add_to_chat(158, "-----Stone Mode ON-----")
- add_to_chat(158,"Aero -> Stone = Scission")
- add_to_chat(158,"Aero -> Noctohelix = Gravitation")
- end
- if command == 'WaterMode' then
- WeatherIndex = 2
- add_to_chat(158, "-----Water Mode ON-----")
- add_to_chat(158,"Stone -> Water = Reverberation")
- add_to_chat(158,"Luminohelix -> Stone = Distortion")
- end
- if command == 'BlizzardMode' then
- WeatherIndex = 3
- add_to_chat(158, "-----Blizzard Mode ON-----")
- add_to_chat(158,"Water -> Blizzard = Induration")
- add_to_chat(158,"Luminohelix -> Stone = Distortion")
- end
- if command == 'AeroMode' then
- WeatherIndex = 4
- add_to_chat(158, "-----Aero Mode ON-----")
- add_to_chat(158,"Stone -> Aero = Detonation")
- add_to_chat(158,"Blizzard -> Water = Fragmentation")
- end
- if command == 'FireMode' then
- WeatherIndex = 5
- add_to_chat(158, "-----Fire Mode ON-----")
- add_to_chat(158,"Stone -> Fire = Liquefaction")
- add_to_chat(158,"Fire -> Thunder = Fusion")
- end
- if command == 'ThunderMode' then
- WeatherIndex = 6
- add_to_chat(158, "-----Thunder Mode ON-----")
- add_to_chat(158,"Water -> Thunder = Impaction")
- add_to_chat(158,"Blizzard -> Water = Fragmentation")
- end
- if command == 'DarkMode' then
- WeatherIndex = 7
- add_to_chat(158, "-----Dark Mode ON-----")
- add_to_chat(158,"Blizzard -> Noctohelix = Compression")
- end
- if command == 'ImmOpening' then
- if SkillchainTier == 2 then
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Aero' <t>")
- send_command("@input /p Opening Gravitation, [Stone/Dark MB] Target: <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Luminohelix' <t>")
- send_command("@input /p Opening Distortion, [Water/Blizzard MB] Target: <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Luminohelix' <t>")
- send_command("@input /p Opening Distortion, [Blizzard/Water MB] Target: <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Blizzard' <t>")
- send_command("@input /p Opening Fragmentation, [Aero/Thunder MB] Target: <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Fire' <t>")
- send_command("@input /p Opening Fusion, [Fire/Light MB] Target: <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Blizzard' <t>")
- send_command("@input /p Opening Fragmentation, [Thunder/Aero MB] Target: <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Aero' <t>")
- send_command("@input /p Opening Gravitation, [Dark/Stone MB] Target: <t>")
- end
- else
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Aero' <t>")
- send_command("@input /p Opening Scission, [Stone MB] Target: <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Opening Reverberation, [Water MB] Target: <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Water' <t>")
- send_command("@input /p Opening Induration, [Blizzard MB] Target: <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Opening Detonation, [Aero MB] Target: <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Opening Liquefaction, [Fire MB] Target: <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Water' <t>")
- send_command("@input /p Opening Impaction, [Thunder MB] Target: <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Blizzard' <t>")
- send_command("@input /p Opening Compression, [Dark MB] Target: <t>")
- end
- end
- end
- if command == 'ImmClosing' then
- if SkillchainTier == 2 then
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Noctohelix' <t>")
- send_command("@wait 1;input /p Closing Gravitation, Stone/Dark MB GO! Target: <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Closing Distortion, Water/Blizzard MB GO! Target: <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Closing Distortion, Blizzard/Water MB GO! Target: <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Water' <t>")
- send_command("@input /p Closing Fragmentation, Aero/Thunder MB GO! Target: <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Thunder' <t>")
- send_command("@input /p Closing Fusion, Fire/Light MB GO! Target: <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Water' <t>")
- send_command("@input /p Closing Fragmentation, Thunder/Aero MB GO! Target: <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Noctohelix' <t>")
- send_command("@wait 1;input /p Closing Gravitation, Dark/Stone MB GO! Target: <t>")
- end
- else
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Stone' <t>")
- send_command("@input /p Closing Scission, Stone MB GO! Target: <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Water' <t>")
- send_command("@input /p Closing Reverberation, Water MB GO! Target: <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Blizzard' <t>")
- send_command("@input /p Closing Induration, Blizzard MB GO! Target: <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Aero' <t>")
- send_command("@input /p Closing Detonation, Aero MB GO! Target: <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Fire' <t>")
- send_command("@input /p Closing Liquefaction, Fire MB GO! Target: <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Thunder' <t>")
- send_command("@input /p Closing Impaction, Thunder MB GO! Target: <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Noctohelix' <t>")
- send_command("@wait 1;input /p Closing Compression, Dark MB GO! Target: <t>")
- end
- end
- end
- if command == 'WeatherSpell' then
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Sandstorm II' <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Rainstorm II' <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Hailstorm II' <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Windstorm II' <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Firestorm II' <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Thunderstorm II' <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Voidstorm II' <t>")
- end
- end
- if command == "T1" then
- send_command("@input /ma '"..WeatherMode[WeatherIndex].."' <t>")
- end
- if command == "T2" then
- send_command("@input /ma '"..WeatherMode[WeatherIndex].." II' <t>")
- end
- if command == "T3" then
- send_command("@input /ma '"..WeatherMode[WeatherIndex].." III' <t>")
- end
- if command == "T4" then
- send_command("@input /ma '"..WeatherMode[WeatherIndex].." IV' <t>")
- end
- if command == "T5" then
- send_command("@input /ma '"..WeatherMode[WeatherIndex].." V' <t>")
- end
- if command == 'Helix' then
- if WeatherIndex == STONE_NUM then
- send_command("@input /ma 'Geohelix II' <t>")
- elseif WeatherIndex == WATER_NUM then
- send_command("@input /ma 'Hydrohelix II' <t>")
- elseif WeatherIndex == BLIZZARD_NUM then
- send_command("@input /ma 'Cryohelix II' <t>")
- elseif WeatherIndex == AERO_NUM then
- send_command("@input /ma 'Anemohelix II' <t>")
- elseif WeatherIndex == FIRE_NUM then
- send_command("@input /ma 'Pyrohelix II' <t>")
- elseif WeatherIndex == THUNDER_NUM then
- send_command("@input /ma 'Ionohelix II' <t>")
- elseif WeatherIndex == DARK_NUM then
- send_command("@input /ma 'Noctohelix II' <t>")
- end
- end
- if command == 'SkillchainChange' then
- if SkillchainTier == 1 then
- SkillchainTier = 2
- add_to_chat(158, "Tier 2 Skillchains")
- else
- SkillchainTier = 1
- add_to_chat(158, "Tier 1 Skillchains")
- end
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for non-casting events.
- -------------------------------------------------------------------------------------------------------------------
- -- Handle notifications of general user state change.
- function job_state_change(stateField, newValue, oldValue)
- if stateField == 'Offense Mode' then
- if newValue == 'None' then
- enable('main','sub','range')
- else
- disable('main','sub','range')
- end
- end
- end
- function display_current_job_state(eventArgs)
- eventArgs.handled = true
- local msg = ''
- if state.OffenseMode.value ~= 'None' then
- msg = msg .. 'Combat ['..state.OffenseMode.value..']'
- if state.CombatForm.has_value then
- msg = msg .. ' (' .. state.CombatForm.value .. ')'
- end
- msg = msg .. ', '
- end
- --[[if state.HybridMode.value ~= 'Normal' then
- msg = msg .. '/' .. state.HybridMode.value
- end]]
- msg = msg .. 'Casting ['..state.CastingMode.value..'], Idle ['..state.IdleMode.value..']'
- if state.MagicBurst.value then
- msg = msg .. ', MB [ON]'
- else
- msg = msg .. ', MB [OFF]'
- end
- if state.ConsMP.value then
- msg = msg .. ', AF Body [ON]'
- else
- msg = msg .. ', AF Body [OFF]'
- end
- if state.DeatCast.value then
- msg = msg .. ', Death Mode [ON]'
- else
- msg = msg .. ', Death Mode [OFF]'
- end
- 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 [ON]'
- end
- if state.PCTargetMode.value ~= 'default' then
- msg = msg .. ', Target PC: '..state.PCTargetMode.value
- end
- if state.SelectNPCTargets.value == true then
- msg = msg .. ', Target NPCs'
- end
- add_to_chat(122, msg)
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements standard library decisions.
- -------------------------------------------------------------------------------------------------------------------
- -- Modify the default idle set after it was constructed.
- function customize_idle_set(idleSet)
- if player.mpp < 51 then
- idleSet = set_combine(idleSet, sets.latent_refresh)
- end
- return idleSet
- end
- -- Set eventArgs.handled to true if we don't want the automatic display to be run.
- function display_current_job_state(eventArgs)
- display_current_caster_state()
- eventArgs.handled = true
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- -- Select default macro book on initial load or subjob change.
- function select_default_macro_book()
- -- Default macro set/book
- set_macro_page(1, 4)
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement