Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- Original: Motenten / Modified: Boposhopo
- -------------------------------------------------------------------------------------------------------------------
- -- 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()
- wyv_breath_spells = S{'Dia', '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'}
- send_command('wait 6;input /lockstyleset 5')
- end
- -------------------------------------------------------------------------------------------------------------------
- -- User setup functions for this job. Recommend that these be overridden in a sidecar file.
- -------------------------------------------------------------------------------------------------------------------
- function user_setup()
- state.OffenseMode:options('Normal', 'STP', 'CRIT', 'DT')
- state.WeaponskillMode:options('Normal', 'ATK')
- state.HybridMode:options('Normal', 'DT')
- state.IdleMode:options('Normal', 'DT')
- state.CP = M(false, "Capacity Points Mode")
- select_default_macro_book(7)
- end
- function user_unload()
- 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"}
- sets.precast.JA['Ancient Circle'] = {legs="Vishap Brais +3"}
- sets.precast.JA['Spirit Link'] = {
- head="Vishap Armet +1",
- hands="Peltast's Vambraces +3"
- }
- sets.precast.JA['Steady Wing'] = {
- legs="Vishap Brais +3"
- }
- sets.precast.JA['Jump'] = {
- ammo="Coiste Bodhar",
- head="Flam. Zucchetto +2",
- body="Pteroslaver Mail +3",
- hands="Vishap Finger Gauntlets +2",
- legs="Pteroslaver Brais +3",
- feet="Ostro Greaves",
- neck="Vim Torque +1",
- waist="Sailfi Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Lehko's Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','"Store TP"+10',}},
- }
- sets.precast.JA['High Jump'] = set_combine(sets.precast.JA['Jump'], {})
- sets.precast.JA['Spirit Jump'] = set_combine(sets.precast.JA['Jump'], {legs="Peltast's Cuissots +3", feet="Peltast's Schynbalds +3"})
- sets.precast.JA['Soul Jump'] = set_combine(sets.precast.JA['Jump'], {body="Pelt. Plackart +3", hands="Gleti's Gauntlets"})
- sets.precast.JA['Super Jump'] = {}
- sets.precast.JA['Angon'] = {ammo="Angon", hands="Ptero. Fin. G. +3"}
- -- Fast cast sets for spells
- sets.precast.FC = {ammo="Sapience Orb",
- head={ name="Carmine Mask +1", augments={'Accuracy+20','Mag. Acc.+12','"Fast Cast"+4',}},
- body="Sacro Breastplate",
- hands="Leyline Gloves",
- legs={ name="Founder's Hose", augments={'MND+10','Mag. Acc.+15','Attack+15','Breath dmg. taken -5%',}},
- feet={ name="Carmine Greaves +1", augments={'HP+80','MP+80','Phys. dmg. taken -4',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Loquac. Earring",
- right_ear="Etiolation Earring",}
- ------------------------------------------------------------------------------------------------
- ------------------------------------- Weapon Skill Sets ----------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.precast.WS = {ammo="Knobkierrie",
- head="Nyame Helm",
- body="Gleti's Cuirass",
- hands={ name="Ptero. Fin. G. +3", augments={'Enhances "Angon" effect',}},
- legs="Nyame Flanchard",
- feet="Nyame Sollerets",
- neck="Dragoon's Collar +2",
- waist="Sailfi Belt +1",
- left_ear={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- right_ear="Thrud Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS['Savage Blade'] = {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={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- left_ring="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS['Savage Blade'].ATK = set_combine(sets.precast.WS['Savage Blade'], {head="Gleti's Mask", legs="Gleti's Breeches",})
- sets.precast.WS["Camlann's Torment"] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body={ name="Nyame Mail", augments={'Path: B',}},
- hands="Nyame Gauntlets",
- 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="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS["Camlann's Torment"].ATK = set_combine(sets.precast.WS["Camlann's Torment"], {body="Gleti's Cuirass",})
- sets.precast.WS['Retribution'] = sets.precast.WS['Savage Blade']
- sets.precast.WS['Drakesbane'] = {ammo="Knobkierrie",
- head={ name="Blistering Sallet +1", augments={'Path: A',}},
- body="Hjarrandi Breast.",
- hands="Gleti's Gauntlets",
- legs="Peltast's Cuissots +3",
- feet={ name="Valorous Greaves", augments={'Crit. hit damage +4%','STR+15','Accuracy+8',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- right_ear={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- right_ear="Thrud Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+9','Crit.hit rate+10','Phys. dmg. taken-10%',}},}
- sets.precast.WS['Drakesbane'].ATK = set_combine(sets.precast.WS['Drakesbane'], {head="Gleti's Mask", body="Gleti's Cuirass",})
- sets.precast.WS['Geirskogul'] = set_combine(sets.precast.WS, { })
- sets.precast.WS['Impulse Drive'] = {ammo="Knobkierrie",
- head="Peltast's Mezail +3",
- body="Hjarrandi Breast.",
- hands="Nyame Gauntlets",
- legs="Pelt. Cuissots +3",
- 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={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- right_ear="Thrud Earring",
- left_ring="Defending Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS['Impulse Drive'].ATK = set_combine(sets.precast.WS['Impulse Drive'], {body="Gleti's Cuirass", hands="Gleti's Gauntlets",})
- sets.precast.WS['Impulse Drive'].HighTP = set_combine(sets.precast.WS['Impulse Drive'], {})
- sets.precast.WS['Sonic Thrust'] = set_combine(sets.precast.WS["Camlann's Torment"], {})
- sets.precast.WS['Stardiver'] = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head={ name="Ptero. Armet +3", augments={'Enhances "Deep Breathing" effect',}},
- body={ name="Gleti's Cuirass", augments={'Path: A',}},
- hands="Pel. Vambraces +3",
- legs="Gleti's Breeches",
- feet="Nyame Sollerets",
- neck="Fotia Gorget",
- waist="Fotia Belt",
- left_ear="Sherida Earring",
- right_ear={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}},
- left_ring="Niqmaddu Ring",
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','"Dbl.Atk."+10',}},
- }
- sets.precast.WS['Stardiver'].ATK = set_combine(sets.precast.WS['Stardiver'], {head="Flam. Zucchetto +2", body="Gleti's Cuirass", hands="Gleti's Gauntlets", neck="Dragoon's Collar +2"})
- sets.precast.WS['Raiden Thrust'] = {ammo="Knobkierrie",
- head={ name="Nyame Helm", augments={'Path: B',}},
- body={ name="Nyame Mail", augments={'Path: B',}},
- hands="Nyame Gauntlets",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Sibyl Scarf",
- waist="Eschan Stone",
- left_ear="Friomisi Earring",
- right_ear="Ishvara Earring",
- left_ring={ name="Metamor. Ring +1", augments={'Path: A',}},
- right_ring="Regal Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS['Thunder Thrust'] = set_combine(sets.precast.WS['Raiden Thrust'], {})
- sets.precast.WS['Cataclysm'] = {ammo="Knobkierrie",
- head="Pixie Hairpin +1",
- body={ name="Nyame Mail", augments={'Path: B',}},
- hands="Nyame Gauntlets",
- legs={ name="Nyame Flanchard", augments={'Path: B',}},
- feet={ name="Nyame Sollerets", augments={'Path: B',}},
- neck="Sibyl Scarf",
- waist="Hachirin-no-obi",
- left_ear="Friomisi Earring",
- right_ear="Ishvara Earring",
- left_ring={ name="Metamor. Ring +1", augments={'Path: A',}},
- right_ring="Archon Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%','Damage taken-5%',}},}
- sets.precast.WS['Leg Sweep'] = set_combine(sets.precast.WS["Camlann's Torment"], {})
- sets.WSDayBonus = {}
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Midcast Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.midcast.HealingBreath = {
- head="Ptero. Armet +3",
- legs="Vishap Brais +3",
- }
- sets.midcast.ElementalBreath = {
- head="Ptero. Armet +3"
- }
- ------------------------------------------------------------------------------------------------
- ----------------------------------------- Idle Sets --------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.idle = {
- ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Gleti's Mask",
- body={ name="Gleti's Cuirass", augments={'Path: A',}},
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- neck="Loricate Torque +1",
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Defending Ring",
- right_ring="Shneddick Ring",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Damage taken-5%',}},
- }
- sets.idle.Town = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Gleti's Mask",
- body={ name="Gleti's Cuirass", augments={'Path: A',}},
- hands="Gleti's Gauntlets",
- legs="Gleti's Breeches",
- feet="Gleti's Boots",
- neck="Loricate Torque +1",
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Defending Ring",
- right_ring="Shneddick Ring",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Damage taken-5%',}},}
- sets.Kiting = {legs="Carmine Cuisses +1"}
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Engaged Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.engaged = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Flam. Zucchetto +2",
- body="Pelt. Plackart +3",
- hands="Pel. Vambraces +3",
- legs={ name="Ptero. Brais +3", augments={'Enhances "Strafe" effect',}},
- feet="Flam. Gambieras +2",
- neck={ name="Vim Torque +1", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Sroda Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Moonlight Ring",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Damage taken-5%',}},
- }
- sets.engaged.STP = {ammo="Aurgelmir Orb",
- 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={ name="Valorous Greaves", augments={'Accuracy+20','"Store TP"+7','VIT+4','Attack+2',}},
- neck={ name="Vim Torque +1", augments={'Path: A',}},
- waist={ name="Sailfi Belt +1", augments={'Path: A',}},
- left_ear="Telos Earring",
- right_ear="Crep. Earring",
- left_ring="Moonlight Ring",
- right_ring="Moonlight Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','"Store TP"+10','Phys. dmg. taken-10%',}},}
- sets.engaged.CRIT = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Hjarrandi Helm",
- body={ name="Gleti's Cuirass", augments={'Path: A',}},
- hands={ name="Gleti's Gauntlets", augments={'Path: A',}},
- legs="Pelt. Cuissots +3",
- feet={ name="Valorous Greaves", augments={'Crit. hit damage +4%','STR+15','Accuracy+8',}},
- neck={ name="Dgn. Collar +2", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear={ name="Pel. Earring +1", augments={'System: 1 ID: 1676 Val: 0','Accuracy+15','Mag. Acc.+15','Crit.hit rate+5',}},
- left_ring="Niqmaddu Ring",
- right_ring="Lehko's Ring",
- back={ name="Brigantia's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+9','Crit.hit rate+10','Phys. dmg. taken-10%',}},}
- sets.engaged.DT = {ammo={ name="Coiste Bodhar", augments={'Path: A',}},
- head="Hjarrandi Helm",
- body={ name="Gleti's Cuirass", augments={'Path: A',}},
- hands="Pel. Vambraces +3",
- legs="Volte Tights",
- feet="Flam. Gambieras +2",
- neck={ name="Vim Torque +1", augments={'Path: A',}},
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Sroda Earring",
- left_ring="Defending Ring",
- right_ring="Moonlight Ring",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Damage taken-5%',}},}
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Hybrid Sets -------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.engaged.Hybrid = {ammo="Coiste Bodhar",
- head="Hjarrandi Helm",
- body="Gleti's Cuirass",
- hands="Nyame Gauntlets",
- legs={ name="Valorous Hose", augments={'Attack+19','"Dbl.Atk."+4','STR+4','Accuracy+15',}},
- feet="Flam. Gambieras +2",
- neck="Loricate Torque +1",
- waist="Ioskeha Belt +1",
- left_ear="Sherida Earring",
- right_ear="Telos Earring",
- left_ring="Niqmaddu Ring",
- right_ring="Defending Ring",
- back={ name="Brigantia's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','Accuracy+10','"Dbl.Atk."+10','Damage taken-5%',}},
- }
- ------------------------------------------------------------------------------------------------
- ---------------------------------------- Special Sets ------------------------------------------
- ------------------------------------------------------------------------------------------------
- sets.buff.Doom = {}
- sets.CP = {}
- --sets.Reive = {neck="Ygnas's Resolve +1"}
- end
- -------------------------------------------------------------------------------------------------------------------
- -- Job-specific hooks for standard casting events.
- -------------------------------------------------------------------------------------------------------------------
- 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) or (spell.skill == 'Ninjutsu' and player.hpp < 33) then
- equip(sets.precast.HealingBreath)
- end
- end
- function job_post_precast(spell, action, spellMap, eventArgs)
- if spell.type == 'WeaponSkill' then
- if spell.english == 'Stardiver' and state.WeaponskillMode.current == 'Normal' then
- if world.day_element == 'Earth' or world.day_element == 'Light' or world.day_element == 'Dark' then
- equip(sets.WSDayBonus)
- end
- elseif spell.english == 'Impulse Drive' and player.tp > 2000 then
- equip(sets.precast.WS['Impulse Drive'].HighTP)
- end
- 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)
- else
- enable('ring1','ring2','waist')
- handle_equipping_gear(player.status)
- end
- end
- if buff == 'Hasso' and not gain then
- add_to_chat(167, 'Hasso just expired!')
- 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
- 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 cf_msg = ''
- if state.CombatForm.has_value then
- cf_msg = ' (' ..state.CombatForm.value.. ')'
- end
- local m_msg = state.OffenseMode.value
- if state.HybridMode.value ~= 'Normal' then
- m_msg = m_msg .. '/' ..state.HybridMode.value
- end
- local ws_msg = state.WeaponskillMode.value
- local d_msg = 'None'
- if state.DefenseMode.value ~= 'None' then
- d_msg = state.DefenseMode.value .. state[state.DefenseMode.value .. 'DefenseMode'].value
- end
- local i_msg = state.IdleMode.value
- local msg = ''
- if state.Kiting.value then
- msg = msg .. ' Kiting: On |'
- end
- add_to_chat(002, '| ' ..string.char(31,210).. 'Melee' ..cf_msg.. ': ' ..string.char(31,001)..m_msg.. string.char(31,002).. ' |'
- ..string.char(31,207).. ' WS' ..am_msg.. ': ' ..string.char(31,001)..ws_msg.. string.char(31,002).. ' |'
- ..string.char(31,004).. ' Defense: ' ..string.char(31,001)..d_msg.. string.char(31,002).. ' |'
- ..string.char(31,008).. ' Idle: ' ..string.char(31,001)..i_msg.. string.char(31,002).. ' |'
- ..string.char(31,002)..msg)
- 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, 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 6; input /lockstyleset 5')
- end
Advertisement
Add Comment
Please, Sign In to add comment