Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Original: Motenten / Modified: Arislan
- -------------------------------------------------------------------------------------------------------------------
- -- Keybinds
- -------------------------------------------------------------------------------------------------------------------
- -- Modes: [ F9 ] Cycle Offense Modes
- -- [ CTRL+F9 ] Cycle Hybrid Modes
- -- [ WIN+F9 ] Cycle Weapon Skill Modes
- -- [ F10 ] Emergency -PDT Mode
- -- [ ALT+F10 ] Toggle Kiting Mode
- -- [ F11 ] Emergency -MDT Mode
- -- [ F12 ] Update Current Gear / Report Current Status
- -- [ CTRL+F12 ] Cycle Idle Modes
- -- [ ALT+F12 ] Cancel Emergency -PDT/-MDT Mode
- -- [ WIN+A ] AttackMode: Capped/Uncapped WS Modifier
- -- [ WIN+C ] Toggle Capacity Points Mode
- --
- --
- -- (Global-Binds.lua contains additional non-job-related keybinds)
- -------------------------------------------------------------------------------------------------------------------
- -- 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.
- function job_setup()
- no_swap_gear = S{"Warp Ring", "Dim. Ring (Dem)", "Dim. Ring (Holla)", "Dim. Ring (Mea)",
- "Trizek Ring", "Echad Ring", "Facility Ring", "Capacity Ring"}
- wyv_breath_spells = S{'Dia', 'Cure', 'Poison', 'Blaze Spikes', 'Protect', 'Sprout Smack', 'Head Butt', 'Cocoon',
- 'Barfira', 'Barblizzara', 'Baraera', 'Barstonra', 'Barthundra', 'Barwatera'}
- wyv_elem_breath = S{'Flame Breath', 'Frost Breath', 'Sand Breath', 'Hydro Breath', 'Gust Breath', 'Lightning Breath'}
- lockstyleset = 12
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
- -------------------------------------------------------------------------------------------------------------------
- function user_setup()
- state.OffenseMode:options('STP', 'Normal', 'LowAcc', 'MidAcc', 'HighAcc', 'MaxAcc')
- state.WeaponskillMode:options('Normal', 'Acc', 'PDL', 'Treasure', 'Subtle')
- state.HybridMode:options('Normal', 'Subtle', 'MEVA', 'Crit', 'DT')
- state.IdleMode:options('Normal','Regain')
- state.PhysicalDefenseMode:options('PDT', 'PetPDT')
- state.AttackMode = M{['description']='Attack', 'Capped', 'Uncapped'}
- state.CP = M(false, "Capacity Points Mode")
- -- Additional local binds
- -- include('Global-Binds.lua') -- OK to remove this line
- -- include('Global-GEO-Binds.lua') -- OK to remove this line
- send_command('lua l gearinfo')
- send_command('bind ^` input /ja "Call Wyvern" <me>')
- send_command('bind !` input /ja "Spirit Link" <me>')
- send_command('bind @a gs c cycle AttackMode')
- send_command('bind @c gs c toggle CP')
- if player.sub_job == 'WAR' then
- send_command('bind !w input /ja "Defender" <me>')
- elseif player.sub_job == 'SAM' then
- send_command('bind !w input /ja "Hasso" <me>')
- end
- send_command('bind @w gs c toggle WeaponLock')
- send_command('bind @c gs c toggle CP')
- if player.sub_job == 'WAR' then
- send_command('bind ^numpad/ input /ja "Berserk" <me>')
- send_command('bind ^numpad* input /ja "Warcry" <me>')
- send_command('bind ^numpad- input /ja "Aggressor" <me>')
- elseif player.sub_job == 'SAM' then
- send_command('bind ^numpad/ input /ja "Meditate" <me>')
- send_command('bind ^numpad* input /ja "Sekkanoki" <me>')
- send_command('bind ^numpad- input /ja "Third Eye" <me>')
- end
- --send_command('bind ^numpad7 input /ws "Camlann\'s Torment" <t>')
- --send_command('bind ^numpad8 input /ws "Drakesbane" <t>')
- --send_command('bind ^numpad4 input /ws "Stardiver" <t>')
- --send_command('bind ^numpad5 input /ws "Geirskogul" <t>')
- --send_command('bind ^numpad1 input /ws "Sonic Thrust" <t>')
- --send_command('bind ^numpad2 input /ws "Leg Sweep" <t>')
- --send_command('bind numpad0 input /ja "Jump" <t>')
- --send_command('bind numpad. input /ja "High Jump" <t>')
- --send_command('bind ^numpad0 input /ja "Spirit Jump" <t>')
- --send_command('bind ^numpad. input /ja "Soul Jump" <t>')
- --send_command('bind ^numpadenter input /ja "Super Jump" <t>')
- select_default_macro_book()
- set_lockstyle()
- state.Auto_Kite = M(false, 'Auto_Kite')
- moving = false
- end
- function user_unload()
- send_command('unbind ^`')
- send_command('unbind !`')
- send_command('unbind @a')
- send_command('unbind @c')
- send_command('unbind ^numpad/')
- send_command('unbind ^numpad*')
- send_command('unbind ^numpad-')
- send_command('unbind ^numpad7')
- send_command('unbind ^numpad8')
- send_command('unbind ^numpad4')
- send_command('unbind ^numpad5')
- send_command('unbind ^numpad1')
- send_command('unbind ^numpad2')
- send_command('unbind numpad0')
- send_command('unbind numpad.')
- send_command('unbind ^numpad0')
- send_command('unbind ^numpad.')
- send_command('unbind ^numpadenter')
- send_command('unbind #`')
- send_command('unbind #1')
- send_command('unbind #2')
- send_command('unbind #3')
- send_command('unbind #4')
- send_command('unbind #5')
- send_command('unbind #6')
- send_command('unbind #7')
- send_command('unbind #8')
- send_command('unbind #9')
- send_command('unbind #0')
- send_command('lua u gearinfo')
- end
- -- Define sets and vars used by this job file.
- function init_gear_sets()
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Precast Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.precast.JA['Spirit Surge'] = {body="Ptero. Mail +3"}
- sets.precast.JA['Call Wyvern'] = {body="Ptero. Mail +3",
- right_ear="Pel. Earring +2"}
- sets.precast.JA['Ancient Circle'] = {legs="Vishap Brais +3"}
- sets.precast.JA['Spirit Link'] = {
- head="Vishap Armet +1",
- hands="Peltast's Vambraces +3",
- feet={ name="Ptero. Greaves +3", augments={'Enhances "Empathy" effect',}},
- left_ear="Pratik Earring",
- }
- sets.precast.JA['Steady Wing'] = {
- body={ name="Emicho Haubert", augments={'Pet: HP+100','Pet: INT+15','Pet: "Regen"+2',}},
- hands={ name="Despair Fin. Gaunt.", augments={'Accuracy+10','Pet: VIT+7','Pet: Damage taken -3%',}},
- legs="Vishap Brais +3",
- feet={ name="Ptero. Greaves +3", augments={'Enhances "Empathy" effect',}},
- left_ear="Lancer's Earring",
- right_ear="Anastasi Earring",
- back={ name="Updraft Mantle", augments={'STR+2','Pet: Breath+10','Pet: Damage taken -3%','Weapon skill damage +2%',}},
- }
- sets.precast.JA['Jump'] = {
- ammo="Aurgelmir Orb +1",
- head="Flam. Zucchetto +2",
- body="Vishap Mail +3",
- hands="Vishap F. G. +1",
- legs={ name="Ptero. Brais +3", augments={'Enhances "Strafe" effect',}},
- feet="Ostro Greaves",
- neck="Anu Torque",
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Chirich Ring +1",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}
- }
- sets.precast.JA['High Jump'] = sets.precast.JA['Jump']
- sets.precast.JA['Spirit Jump'] = sets.precast.JA['Jump']
- sets.precast.JA['Soul Jump'] = sets.precast.JA['Jump']
- sets.precast.JA['Super Jump'] = {}
- sets.precast.JA['Angon'] = {ammo="Angon", hands="Ptero. Fin. G. +3"}
- sets.precast.HealingBreath = {head="Vishap Armet +1"}
- -- Fast cast sets for spells
- sets.precast.FC = {ammo="Sapience Orb",
- head="Vishap Armet +1",
- hands={ name="Leyline Gloves", augments={'Accuracy+15','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Fast Cast"+3',}},
- feet={ name="Carmine Greaves +1", augments={'Accuracy+12','DEX+12','MND+20',}},
- neck="Orunmila's Torque",
- left_ear="Enchntr. Earring +1",
- right_ear="Loquac. Earring",
- left_ring="Rahab Ring",
- right_ring="Weather. Ring +1",
- }
- ------------------------------------------------------------------------------------------------
- ------------------------------------- Weapon Skill Sets ----------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.precast.WS = {
- ammo="Knobkierrie",
- head="Nyame Helm",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- legs="Vishap Brais +3",
- feet="Nyame Flanchard",
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Moonshade Earring",
- right_ear="Pel. Earring +2",
- left_ring="Regal Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- }
- sets.precast.WS.Acc = sets.precast.WS
- sets.precast.WS.Uncapped = set_combine(sets.precast.WS, {
- head="",
- })
- sets.precast.WS['Impulse Drive'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Nyame Mail",
- hands="Ptero. Fin. G. +3",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Rep. Plat. Medal",
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Thrud Earring",
- right_ear={ name="Pel. Earring +2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+16','Mag. Acc.+16','Crit.hit rate+6','STR+7 VIT+7',}},
- left_ring="Cornelia's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Phys. dmg. taken-10%',}}
- }
- sets.precast.WS['Impulse Drive'].Acc = sets.precast.WS['Impulse Drive']
- sets.precast.WS['Impulse Drive'].Uncapped = sets.precast.WS['Impulse Drive']
- sets.precast.WS['Camlann\'s Torment'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Nyame Mail",
- hands="Ptero. Fin. G. +3",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Rep. Plat. Medal",
- waist="Fotia Belt",
- left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +250',}},
- right_ear="Thrud Earring",
- left_ring="Cornelia's Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Phys. dmg. taken-10%',}}
- }
- sets.precast.WS['Camlann\'s Torment'].Acc = sets.precast.WS['Camlann\'s Torment']
- sets.precast.WS['Camlann\'s Torment'].Uncapped = sets.precast.WS['Camlann\'s Torment']
- sets.precast.WS['Wheeling Thrust'] = {ammo="Knobkierrie",
- head="Nyame Helm",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- legs="Nyame Flanchard",
- feet="Nyame Sollerets",
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Thrud Earring",
- right_ear="Pel. Earring +2",
- left_ring="Epaminondas's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
- }
- sets.precast.WS['Penta Thrust'] = {
- ammo="Knobkierrie",
- head={ name="Ptero. Armet +3", augments={'Enhances "Deep Breathing" effect',}},
- body="Dagon breastplate",
- hands="Sulev. Gauntlets +2",
- legs="Sulev. Cuisses +2",
- feet="Nyame Sollerets",
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Moonshade Earring",
- right_ear="Pel. Earring +2",
- left_ring="Regal Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- }
- sets.precast.WS['Drakesbane'] = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Blistering Sallet +1", augments={'Path: A',}},
- body="Hjarrandi Breast.",
- hands={ name="Gleti's Gauntlets", augments={'Path: A',}},
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Rep. Plat. Medal",
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +250',}},
- right_ear={ name="Pel. Earring +2", augments={'System: 1 ID: 1676 Val: 0','Accuracy+16','Mag. Acc.+16','Crit.hit rate+6','STR+7 VIT+7',}},
- left_ring="Cornelia's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Crit.hit rate+10','Phys. dmg. taken-10%',}}
- }
- sets.precast.WS['Drakesbane'].Acc = sets.precast.WS['Drakesbane']
- sets.precast.WS['Drakesbane'].Uncapped = sets.precast.WS['Drakesbane']
- sets.precast.WS['Geirskogul'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Nyame Mail",
- hands={ name="Nyame Gauntlets", augments={'Path: B',}},
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist="Fotia Belt",
- left_ear="Sherida Earring",
- right_ear="Thrud Earring",
- left_ring="Epaminondas's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
- }
- sets.precast.WS['Geirskogul'].Acc = set_combine(sets.precast.WS['Geirskogul'], {})
- sets.precast.WS['Geirskogul'].Uncapped = set_combine(sets.precast.WS['Geirskogul'], {
- head="",
- legs=gear.Valo_WSD_legs,
- })
- sets.precast.WS['Sonic Thrust'] = sets.precast.WS['Camlann\'s Torment']
- sets.precast.WS['Sonic Thrust'].Acc = sets.precast.WS['Camlann\'s Torment'].Acc
- sets.precast.WS['Sonic Thrust'].Uncapped = sets.precast.WS['Camlann\'s Torment'].Uncapped
- sets.precast.WS['Sonic Thrust'].Treasure = {ammo="Knobkierrie",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Volte Jupon",
- hands="Volte Bracers",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet="Volte Boots",
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Thrud Earring",
- right_ear="Balder Earring +1",
- left_ring="Epaminondas's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
- }
- sets.precast.WS['Stardiver'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Nyame Mail",
- hands="Pel. Vambraces +3",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +250',}},
- right_ear="Sherida Earring",
- left_ring="Cornelia's Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}
- }
- sets.precast.WS['Stardiver'].Acc = set_combine(sets.precast.WS['Stardiver'], {
- feet="Vishap Greaves +1",
- })
- sets.precast.WS['Stardiver'].PDL = set_combine(sets.precast.WS['Stardiver'], {
- head="Gleti's Mask",
- body="Gleti's Cuirass",
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- })
- sets.precast.WS['Stardiver'].Subtle = set_combine(sets.precast.WS['Stardiver'], {legs="Gleti's Breeches",
- left_ear="Sherida Earring",
- right_ear="Pel. Earring +2",
- right_ring="Niqmaddu Ring",})
- sets.precast.WS['Raiden Thrust'] = {
- ammo="Pemphredo Tathlum",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body="Nyame Mail",
- hands={ name="Nyame Gauntlets", augments={'Path: B',}},
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Baetyl Pendant",
- waist="Orpheus's Sash",
- left_ear={ name="Moonshade Earring", augments={'Accuracy+4','TP Bonus +250',}},
- right_ear="Friomisi Earring",
- left_ring="Cornelia's Ring",
- right_ring={ name="Metamor. Ring +1", augments={'Path: A',}},
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Phys. dmg. taken-10%',}}
- }
- sets.precast.WS['Thunder Thrust'] = sets.precast.WS['Raiden Thrust']
- sets.precast.WS['Leg Sweep'] = {ammo="Voluspa Tathlum",
- head="Peltast's Mezail +3",
- body="Pelt. Plackart +3",
- hands="Pel. Vambraces +3",
- legs="Pelt. Cuissots +3",
- feet="Pelt. Schyn. +3",
- neck="Sanctity Necklace",
- waist="Skrymir Cord +1",
- left_ear="Crep. Earring",
- right_ear="Pel. Earring +2",
- left_ring="Etana Ring",
- right_ring="Stikini Ring +1",
- back={ name="Brigantia's Mantle", augments={'STR+20','Mag. Acc+20 /Mag. Dmg.+20','Magic Damage +10','Weapon skill damage +10%',}},
- }
- sets.precast.WS['Shell Crusher'] = sets.precast.WS['Leg Sweep']
- sets.precast.WS['Cataclysm'] = {ammo="Pemphredo Tathlum",
- head="Pixie Hairpin +1",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- legs="Nyame Flanchard",
- feet="Nyame sollerets",
- neck="Sanctity Necklace",
- waist="Orpheus's Sash",
- left_ear="Crematio Earring",
- right_ear={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- left_ring="Archon Ring",
- right_ring="Shiva Ring +1",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}},
- }
- sets.precast.WS['Retribution'] = sets.precast.WS['Camlann\'s Torment']
- sets.precast.WS['Savage Blade'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Nyame Mail",
- hands="Nyame Gauntlets",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Rep. Plat. Medal",
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Thrud Earring",
- right_ear="Pel. Earring +2",
- left_ring="Cornelia's Ring",
- right_ring="Epaminondas's Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Phys. dmg. taken-10%',}}}
- sets.precast.WS['Shattersoul'] = {ammo="Knobkierrie",
- head={ name="Ptero. Armet +3", augments={'Enhances "Deep Breathing" effect',}},
- body="Dagon Breast.",
- hands="Sulev. Gauntlets +2",
- legs="Sulev. Cuisses +2",
- feet="Nyame Sollerets",
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Sherida Earring",
- right_ear="Balder Earring +1",
- left_ring="Regal Ring",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- }
- sets.precast.WS['Shattersoul'].PDL = set_combine(sets.precast.WS['Shattersoul'], {
- head="Gleti's Mask",
- body="Gleti's Cuirass",
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- })
- sets.precast.WS['Full Swing'] = sets.precast.WS['Camlann\'s Torment']
- -- sets.WSDayBonus = {head="Gavialis Helm"}
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Midcast Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.midcast.HealingBreath = {
- head="Ptero. Armet +3",
- body="Nyame Mail",
- hands="Peltast's Vambraces +3",
- legs="Vishap Brais +3",
- feet={ name="Ptero. Greaves +3", augments={'Enhances "Empathy" effect',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist="Glassblower's Belt",
- right_ear="Anastasi Earring",
- back={ name="Updraft Mantle", augments={'STR+2','Pet: Breath+10','Pet: Damage taken -3%','Weapon skill damage +2%',}},
- }
- sets.midcast.ElementalBreath = {ammo="Voluspa Tathlum",
- head={ name="Ptero. Armet +3", augments={'Enhances "Deep Breathing" effect',}},
- body="Pelt. Plackart +3",
- hands="Pel. Vambraces +3",
- legs="Pelt. Cuissots +3",
- feet="Pelt. Schyn. +3",
- neck="Adad Amulet",
- waist="Incarnation Sash",
- left_ear="Enmerkar Earring",
- right_ear="Kyrene's Earring",
- left_ring="C. Palug Ring",
- right_ring="Vengeful Ring",
- back="Moonlight Cape",
- }
- sets.midcast['Dia'] = {head="Volte Cap", hands="Volte Bracers", feet="Volte Boots", legs="Volte Hose"}
- sets.midcast['Flash'] = {ammo="Sapience Orb",
- head="Halitus Helm",
- body="Emet Harness +1",
- hands={ name="Nyame Gauntlets", augments={'Path: B',}},
- legs={ name="Zoar Subligar +1", augments={'Path: A',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck={ name="Unmoving Collar +1", augments={'Path: A',}},
- waist="Flume Belt +1",
- left_ear="Trux Earring",
- right_ear="Cryptic Earring",
- left_ring="Eihwaz Ring",
- right_ring="Pernicious Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- }
- ------------------------------------------------------------------------------------------------
- ----------------------------------------- Idle Sets --------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.idle = {
- ammo="Staunch Tathlum +1",
- head="Nyame Helm",
- body="Sacro Breastplate",
- hands="Nyame Gauntlets",
- legs="Carmine Cuisses +1",
- feet="Nyame Sollerets",
- neck="Loricate Torque +1",
- waist="Plat. Mog. Belt",
- left_ear="Eabani Earring",
- right_ear="Odnowa Earring +1",
- left_ring="Gelatinous Ring +1",
- right_ring="Paguroidea Ring",
- back="Moonlight Cape"
- }
- sets.idle.Regain = set_combine(sets.idle, {
- head="Gleti's Mask",
- body="Gleti's Cuirass",
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- })
- sets.idle.Pet = {ammo="Staunch Tathlum +1",
- head="Nyame Helm",
- body="Nyame Mail",
- hands={ name="Ptero. Fin. G. +3", augments={'Enhances "Angon" effect',}},
- legs={ name="Ptero. Brais +3", augments={'Enhances "Strafe" effect',}},
- feet={ name="Ptero. Greaves +3", augments={'Enhances "Empathy" effect',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist="Isa Belt",
- left_ear="Enmerkar Earring",
- right_ear="Anastasi Earring",
- left_ring="Defending Ring",
- right_ring="Gelatinous Ring +1",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- }
- sets.idle.Regain.Pet = set_combine(sets.idle.Pet, {
- head="Gleti's Mask",
- body="Gleti's Cuirass",
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- })
- sets.idle.Town = sets.idle
- sets.idle.Weak = sets.idle
- sets.Kiting = {legs="Carmine Cuisses +1"}
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Defense Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.defense.PDT = sets.idle
- sets.defense.MDT = sets.idle
- sets.defense.PetPDT = sets.idle.Pet
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Engaged Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.engaged = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Flam. Zucchetto +2",
- body="Pelt. Plackart +3",
- hands={ name="Gleti's Gauntlets", augments={'Path: A',}},
- legs={ name="Ptero. Brais +3", augments={'Enhances "Strafe" effect',}},
- feet="Flam. Gambieras +2",
- neck={ name="Vim Torque +1", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Sherida Earring",
- right_ear="Sroda Earring",
- left_ring="Chirich Ring +1",
- right_ring="Niqmaddu Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}
- }
- sets.engaged.LowAcc = set_combine(sets.engaged, {
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10',}},
- })
- sets.engaged.MidAcc = set_combine(sets.engaged.LowAcc, {
- waist="Ioskeha Belt +1",
- ear2="Telos Earring",
- })
- sets.engaged.HighAcc = set_combine(sets.engaged.MidAcc, {
- ring1="Chirich Ring +1",
- neck="Shulmanu Collar",
- })
- sets.engaged.MaxAcc = set_combine(sets.engaged.HighAcc, {
- ring1="Regal Ring",
- legs="Vishap Brais +3",
- })
- sets.engaged.STP = sets.engaged
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Hybrid Sets -------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.engaged.Hybrid = set_combine(sets.engaged, {
- head="Gleti's Mask",
- body="Gleti's Cuirass",
- hands="Pel. Vambraces +3",
- legs="Gleti's Breeches",
- feet="Nyame Sollerets",
- neck="Loricate Torque +1",
- left_ring="Moonlight Ring"
- })
- sets.engaged.DT = set_combine(sets.engaged, sets.engaged.Hybrid)
- sets.engaged.LowAcc.DT = set_combine(sets.engaged.LowAcc, sets.engaged.Hybrid)
- sets.engaged.MidAcc.DT = set_combine(sets.engaged.MidAcc, sets.engaged.Hybrid)
- sets.engaged.HighAcc.DT = set_combine(sets.engaged.HighAcc, sets.engaged.Hybrid)
- sets.engaged.STP.DT = set_combine(sets.engaged.STP, sets.engaged.Hybrid)
- sets.engaged.Subtle= set_combine(sets.engaged.Hybrid, {head="Gleti's Mask",
- body="Dagon Breast.",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- right_ear="Pel. Earring +2",
- right_ring="Chirich Ring +1",
- })
- sets.engaged.MEVA= set_combine(sets.engaged, {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Hjarrandi Helm",
- body="Dagon Breast.",
- hands="Sulev. Gauntlets +2",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Sherida Earring",
- right_ear="Brutal Earring",
- left_ring="Moonlight Ring",
- right_ring="Moonlight Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- })
- -- sets.engaged.MEVA= set_combine(sets.engaged, {ammo="Aurgelmir Orb +1",
- -- head="Nyame Helm",
- -- body="Nyame Mail",
- -- hands="Nyame Gauntlets",
- -- legs="Nyame Flanchard",
- -- feet="Nyame Sollerets",
- -- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- -- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- -- left_ear="Sherida Earring",
- -- right_ear="Balder Earring +1",
- -- left_ring="Petrov Ring",
- -- right_ring="Niqmaddu Ring",
- -- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}},
- -- })
- sets.engaged.Crit= set_combine(sets.engaged, {
- body="Gleti's Cuirass",
- ring1="Hetairoi ring",
- ear2="Anastasi Earring",
- feet="Thereoid greaves",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','Crit.hit rate+10',}},
- })
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Special Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.buff.Doom = {
- neck="Nicander's Necklace", --20
- waist="Gishdubar Sash", --10
- }
- sets.CP = {back=""}
- sets.TreasureHunter = {head="Volte Cap", legs="Volte hose", hands="Volte Bracers",feet="Volte boots",}
- --sets.Reive = {neck="Ygnas's Resolve +1"}
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for standard casting events.
- -------------------------------------------------------------------------------------------------------------------
- function job_aftercast(spell, action, spellMap, eventArgs)
- if spell.name == 'Hasso' and not spell.interrupted then
- send_command('wait 285;input /echo Hasso wearing off soon!;')
- end
- end
- function job_precast(spell, action, spellMap, eventArgs)
- -- Wyvern Commands
- if spell.name == 'Dismiss' and pet.hpp < 100 then
- eventArgs.cancel = true
- add_to_chat(50, 'Cancelling Dismiss! ' ..pet.name.. ' is below full HP! [ ' ..pet.hpp.. '% ]')
- elseif wyv_breath_spells:contains(spell.english and player.hpp < 50) or (spell.skill == 'Ninjutsu' and player.hpp < 50) then
- equip({head="Vishap Armet +1"})
- end
- -- Jump Overrides
- --if pet.isvalid and player.main_job_level >= 77 and spell.name == "Jump" then
- -- eventArgs.cancel = true
- -- send_command('@input /ja "Spirit Jump" <t>')
- --end
- --if pet.isvalid and player.main_job_level >= 85 and spell.name == "High Jump" then
- -- eventArgs.cancel = true
- -- send_command('@input /ja "Soul Jump" <t>')
- --end
- end
- --function job_post_precast(spell, action, spellMap, eventArgs)
- -- if spell.type == 'WeaponSkill' and state.WeaponskillMode.current == 'Normal' then
- -- if spell.english == 'Sonic Thrust' then
- -- if world.day_element == 'Earth' or world.day_element == 'Light' then
- -- equip(sets.WSDayBonus)
- -- end
- -- elseif spell.english == 'Stardiver' then
- -- if world.day_element == 'Earth' or world.day_element == 'Light' or world.day_element == 'Dark' then
- -- equip(sets.WSDayBonus)
- -- end
- -- end
- -- end
- --end
- -- function job_pet_midcast(spell, action, spellMap, eventArgs)
- -- if spell.name:startswith('Healing Breath') or spell.name == 'Restoring Breath' then
- -- send_command('gi ugs false')
- -- equip(sets.midcast.HealingBreath)
- -- send_command('wait 1; gi ugs true')
- -- elseif wyv_elem_breath:contains(spell.english) then
- -- send_command('gi ugs false')
- -- equip(sets.midcast.ElementalBreath)
- -- send_command('wait 1; gi ugs true')
- -- end
- -- end
- --function job_pet_midcast(spell, action, spellMap, eventArgs)
- -- if spell.name:startswith('Healing Breath') or spell.name == 'Restoring Breath' then
- -- equip(sets.midcast.HealingBreath)
- -- elseif wyv_elem_breath:contains(spell.english) then
- -- equip(sets.midcast.ElementalBreath)
- -- end
- --end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for non-casting events.
- -------------------------------------------------------------------------------------------------------------------
- function job_buff_change(buff,gain)
- -- If we gain or lose any haste buffs, adjust which gear set we target.
- -- if buffactive['Reive Mark'] then
- -- if gain then
- -- equip(sets.Reive)
- -- disable('neck')
- -- else
- -- enable('neck')
- -- end
- -- end
- if buff == "doom" then
- if gain then
- equip(sets.buff.Doom)
- send_command('@input /p Doomed.')
- disable('ring1','ring2','waist')
- else
- enable('ring1','ring2','waist')
- handle_equipping_gear(player.status)
- end
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements standard library decisions.
- -------------------------------------------------------------------------------------------------------------------
- -- Modify the default idle set after it was constructed.
- function customize_idle_set(idleSet)
- -- if state.CP.current == 'on' then
- -- equip(sets.CP)
- -- disable('back')
- -- else
- -- enable('back')
- -- end
- if state.Auto_Kite.value == true then
- idleSet = set_combine(idleSet, sets.Kiting)
- end
- return idleSet
- 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 Mode ]'
- end
- add_to_chat(060, msg)
- eventArgs.handled = true
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User code that supplements self-commands.
- -------------------------------------------------------------------------------------------------------------------
- function job_handle_equipping_gear(playerStatus, eventArgs)
- check_gear()
- check_moving()
- end
- function job_update(cmdParams, eventArgs)
- handle_equipping_gear(player.status)
- end
- function get_custom_wsmode(spell, action, spellMap)
- if spell.type == 'WeaponSkill' and state.AttackMode.value == 'Uncapped' then
- return "Uncapped"
- end
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Utility functions specific to this job.
- -------------------------------------------------------------------------------------------------------------------
- function job_self_command(cmdParams, eventArgs)
- gearinfo(cmdParams, eventArgs)
- end
- function gearinfo(cmdParams, eventArgs)
- if cmdParams[1] == 'gearinfo' then
- if type(cmdParams[4]) == 'string' then
- if cmdParams[4] == 'true' then
- moving = true
- elseif cmdParams[4] == 'false' then
- moving = false
- end
- end
- if not midaction() then
- job_update()
- end
- end
- end
- function check_moving()
- if state.DefenseMode.value == 'None' and state.Kiting.value == false then
- if state.Auto_Kite.value == false and moving then
- state.Auto_Kite:set(true)
- elseif state.Auto_Kite.value == true and moving == false then
- state.Auto_Kite:set(false)
- end
- end
- end
- function check_gear()
- if no_swap_gear:contains(player.equipment.left_ring) then
- disable("ring1")
- else
- enable("ring1")
- end
- if no_swap_gear:contains(player.equipment.right_ring) then
- disable("ring2")
- else
- enable("ring2")
- end
- end
- windower.register_event('zone change',
- function()
- if no_swap_gear:contains(player.equipment.left_ring) then
- enable("ring1")
- equip(sets.idle)
- end
- if no_swap_gear:contains(player.equipment.right_ring) then
- enable("ring2")
- equip(sets.idle)
- end
- end
- )
- -- Select default macro book on initial load or subjob change.
- function select_default_macro_book()
- -- Default macro set/book: (set, book)
- --if player.sub_job == 'SAM' then
- set_macro_page(1, 7)
- --else
- --set_macro_page(2, 7)
- --end
- end
- function set_lockstyle()
- send_command('wait 2; input /lockstyleset ' .. lockstyleset)
- end
Advertisement
Add Comment
Please, Sign In to add comment