|
Devotion and lua files
Carbuncle.Doryll
サーバ: Carbuncle
Game: FFXI
By Carbuncle.Doryll 2017-01-27 09:44:29
Is there a WHM who use a lua file with a good rule for Devotion ? (use of JA Devotion in a full HP set) ?
I precise that Devotion sacrifices 25% of your current HP to restore an equal amount of MP to the target (without merits), so what i want is to execute the JA when i'm a max HP set.
- Make a rules that equipping a midcast selfcure in maxhp (i have a function to equip a different set when i'm curing myself, so it can be a problem)
- Make a rules for an Idle set with MaxHP
- If possible, join a precast cure with lowHP (that's for the HP recover 500+ for Omen Objectives)
This is my lua :
Code require 'organizer-lib'
-------------------------------------------------------------------------------------------------------------------
-- Initialization function that defines sets and variables to be used.
-------------------------------------------------------------------------------------------------------------------
-- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
-- Initialization function for this job file.
function get_sets()
-- Load and initialize the include file.
include('Mote-Include.lua')
end
-- Setup vars that are user-independent.
function job_setup()
state.Buff['Afflatus Solace'] = buffactive['afflatus solace'] or false
end
-- Setup vars that are user-dependent. Can override this function in a sidecar file.
function user_setup()
-- Options: Override default values
options.OffenseModes = {'None', 'Normal'}
options.DefenseModes = {'Normal'}
options.WeaponskillModes = {'Normal'}
options.CastingModes = {'Normal', 'Resistant', 'HP'}
options.IdleModes = {'Normal', 'PDT', 'HP'}
options.RestingModes = {'Normal'}
options.PhysicalDefenseModes = {'PDT'}
options.MagicalDefenseModes = {'MDT'}
state.Defense.PhysicalMode = 'PDT'
state.OffenseMode = 'None'
-- Default macro set/book
set_macro_page(1, 3)
end
-- Called when this job file is unloaded (eg: job change)
function file_unload()
if binds_on_unload then
binds_on_unload()
end
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
-- Precast Sets
-- Fast cast sets for spells
sets.precast.FC = { main="Grioavolr",
sub="Clerisy strap +1",
ammo="Impatiens",
head="Nahtirah Hat",
body="Inyanga Jubbah +1",
hands={ name="Fanatic Gloves", augments={'MP+50','Healing magic skill +10','"Conserve MP"+7','"Fast Cast"+7',}},
legs="Artsieq Hose",
feet="Regal Pumps +1",
neck="Orunmila's Torque",
waist="Witful Belt",
left_ear="Enchntr. Earring +1",
right_ear="Loquac. Earring",
left_ring="Lebeche Ring",
right_ring="Rahab Ring",
back="Perimede Cape",
}
sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, { waist= "Siegel Sash"})
sets.precast.FC['Healing Magic'] = set_combine(sets.precast.FC, {main="Vadose Rod",sub="Chanter's Shield",legs="Ebers Pant. +1"})
sets.precast.FC.StatusRemoval = sets.precast.FC['Healing Magic']
sets.precast.FC.Stoneskin = set_combine(sets.precast.FC['Enhancing Magic'], {hands="Carapacho Cuffs",legs="Doyen Pants"})
sets.precast.FC.Cure = set_combine(sets.precast.FC.HealingMagic, {main="Ababinili +1",
sub="Clemency Grip",
ammo="Impatiens",
head={ name="Piety Cap +1", augments={'Enhances "Devotion" effect',}},
body="Inyanga Jubbah +1",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Doyen Pants",
feet="Hygieia Clogs +1",
neck="Orunmila's Torque",
waist="Acerbic Sash +1",
left_ear="Nourish. Earring +1",
right_ear="Mendi. Earring",
left_ring="Lebeche Ring",
right_ring="Rahab Ring",
back="Pahtli Cape",
})
sets.precast.FC.Curaga = sets.precast.FC.Cure
-- Precast sets to enhance JAs
sets.precast.JA.Benediction = {body="piety briault +1"}
sets.precast.JA.Devotion = {head="piety cap +1"}
-- Waltz set (chr and vit)
sets.precast.Waltz = {ear2="Roundel Earring"}
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
gear.default.weaponskill_neck = "fotia gorget"
gear.default.weaponskill_waist = "fotia belt"
sets.precast.WS = {}
sets.precast.WS['Flash Nova'] = {}
-- Midcast Sets
sets.midcast.FastRecast = {main="Sucellus",
sub="Chanter's Shield",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Fanatic Gloves",
legs={ name="Vanya Slops", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
feet="Medium's Sabots",
neck="incanter's torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
left_ring="Lebeche Ring",
right_ring="Prolix Ring",
back="Solemnity Cape",
}
-- Cure sets
gear.default.obi_waist = ""
gear.default.obi_back = ""
sets.midcast.CureSolace = {
main="Queller Rod",
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Ebers Bliaud +1",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Phalaina Locket",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Nourishing Earring +1",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
sets.midcast.Cure = {
main="Queller Rod",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Loricate Torque +1",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Nourishing Earring +1",
left_ring="Defending Ring",
right_ring="Dark Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
-- sets.midcast.Cure.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
--}
sets.midcast.Curaga = {
main="Queller Rod",
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Incanter's Torque",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back="Solemnity Cape",
}
sets.self_healing = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Phalaina Locket",
waist="Gishdubar Sash",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Asklepian Ring",
right_ring="Kunaji Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
-- sets.self_healing.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
--}
sets.midcast.CureMelee = {
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Incanter's Torque",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back="Solemnity Cape",
}
sets.midcast.Cursna = {main="Yagrush",
sub="Thuellaic ecu +1",
ammo="Incantor Stone",
head="Ebers Cap +1",
body="Ebers Bliaud +1",
hands="Fanatic Gloves",
legs="Theo. Pant. +1",
feet="Vanya Clogs",
neck="Debilis Medallion",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
left_ring="Haoma's Ring",
right_ring="Haoma's Ring",
back="Alaunus's Cape",
}
sets.midcast.StatusRemoval = {main="Yagrush",
sub="Thuellaic ecu +1",
ammo="Pemphredo Tathlum",
head="Ebers Cap +1",
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Fanatic Gloves",
legs="Ebers Pant. +1",
feet="Medium's Sabots",
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast['Enhancing Magic'] = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +10',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Fi Follet Cape +1",
}
sets.midcast.Haste = set_combine(sets.midcast.Aquaveil, {head="Telchine Cap",Body="Telchine Chasuble",hands="Telchine Gloves",legs="Telchine Braconi",feet="Telchine Pigaches"})
sets.midcast.Refresh = set_combine(sets.midcast.Aquaveil, {head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},waist="Gishdubar Sash",feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},back="Grapevine Cape"})
sets.midcast.Shell = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Protect = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Stoneskin = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Shedir Seraweels",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Stone Gorget",
waist="Siegel Sash",
left_ear="Gifted Earring",
right_ear="Earthcry Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Aquaveil = {main="Vadose Rod",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="chironic hat",
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Shedir Seraweels",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="incanter's torque",
waist="Emphatikos Rope",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Auspice = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Dynasty Mitts",
legs={ name="Vanya Slops", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
feet="Ebers Duckbills +1",
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.BarElement = {main="Beneficus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="Ebers Cap +1",
body="Ebers Bliaud +1",
hands="Ebers Mitts +1",
legs="Piety Pantaloons +1",
feet="Ebers Duckbills +1",
neck="incanter's torque",
waist="Olympus Sash",
left_ear="Andoaa Earring",
right_ear="Mendicant's Earring",
left_ring="Defending Ring",
right_ring="Dark Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Regen = {main="Bolelabunga",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="Inyanga Tiara +1",
body={ name="Piety Briault +1", augments={'Enhances "Benediction" effect',}},
hands="Ebers Mitts +1",
legs="Theo. Pant. +1",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Protectra = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet="Piety Duckbills +1",
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Shellra = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Piety Pantaloons +1",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast['Divine Magic'] = {hands="Fanatic Gloves",}
sets.midcast['Dark Magic'] = {}
--sets.midcast.Stun = set_combine(sets.midcast.DarkMagic, {main=gear.RecastStaff})
-- Custom spell classes
sets.midcast['Enfeebling Magic'] = {main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Chanter's Shield",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body="Vanya Robe",
hands="Inyanga Dastanas +1",
legs="Chironic Hose",
feet="Medium's Sabots",
neck="incanter's torque",
waist="Rumination Sash",
left_ear="Dignitary's Earring",
right_ear="Enfeebling Earring",
left_ring="Globidonta Ring",
right_ring="Sangoma Ring",
back="Altruistic Cape",
}
sets.midcast.MndEnfeebles = {
main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Thuellaic Ecu +1",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body={ name="Vanya Robe", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
hands="Inyan. Dastanas +1",
legs={ name="Chironic Hose", augments={'Mag. Acc.+11 "Mag.Atk.Bns."+11','MND+7','Mag. Acc.+14',}},
feet={ name="Medium's Sabots", augments={'MP+50','MND+10','"Conserve MP"+7','"Cure" potency +5%',}},
neck="Incanter's Torque",
waist="Rumination Sash",
left_ear="Digni. Earring",
right_ear="Enfeebling Earring",
left_ring="Stikini Ring +1",
right_ring="Stikini Ring",
back="Altruistic Cape",
}
sets.midcast.IntEnfeebles = {
main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Thuellaic Ecu +1",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body={ name="Vanya Robe", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
hands="Inyan. Dastanas +1",
legs={ name="Chironic Hose", augments={'Mag. Acc.+11 "Mag.Atk.Bns."+11','MND+7','Mag. Acc.+14',}},
feet={ name="Medium's Sabots", augments={'MP+50','MND+10','"Conserve MP"+7','"Cure" potency +5%',}},
neck="Incanter's Torque",
waist="Rumination Sash",
left_ear="Digni. Earring",
right_ear="Enfeebling Earring",
left_ring="Stikini Ring +1",
right_ring="Stikini Ring",
back="Altruistic Cape",
}
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {main="Boonwell Staff", sub="Oneiros Grip"}
-- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
sets.idle = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
sets.idle.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
}
sets.idle.PDT = {main="Mafic Cudgel",
sub="Genmei Shield",
ammo="Homiliary",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Vrikodara Jupon",
hands="Shrieker's Cuffs",
legs="Artsieq Hose",
feet="Battlecast Gaiters",
neck="Loricate Torque +1",
waist="Rumination Sash",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",
}
sets.idle.Town = {main="Yagrush",
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",
}
sets.idle.Weak = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
sets.Owleyes = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
-- Defense sets
sets.defense.PDT = {}
sets.defense.MDT = {}
sets.Kiting = {feet="crier's gaiters"}
-- 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
-- Basic set for if no TP weapon is defined.
sets.engaged = {}
-- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
sets.buff['Divine Caress'] = {hands="ebers mitts +1",back="Mending Cape"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks that are called to process player actions at specific points in time.
-------------------------------------------------------------------------------------------------------------------
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
-- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
function job_precast(spell, action, spellMap, eventArgs)
classes.CustomClass = get_spell_class(spell, action, spellMap)
if spell.english == "Paralyna" and buffactive.Paralyzed then
-- no gear swaps if we're paralyzed, to avoid blinking while trying to remove it.
eventArgs.handled = true
end
if spell.skill == 'HealingMagic' then
gear.default.obi_back = "Pahtli Cape"
else
gear.default.obi_back = "Pahtli Cape"
end
end
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
function job_midcast(spell, action, spellMap, eventArgs)
if spell.action_type == 'Magic' then
-- Default base equipment layer of fast recast.
equip(sets.midcast.FastRecast)
end
end
function job_post_midcast(spell, action, spellMap, eventArgs)
if spellMap == 'Cure' and spell.target.type == 'SELF' and sets.self_healing then
equip(sets.self_healing)
end
-- Apply Divine Caress boosting items as highest priority over other gear, if applicable.
if spellMap == 'StatusRemoval' and buffactive['Divine Caress'] then
equip(sets.buff['Divine Caress'])
end
end
-- Return true if we handled the aftercast work. Otherwise it will fall back
-- to the general aftercast() code in Mote-Include.
function job_aftercast(spell, action, spellMap, eventArgs)
if not spell.interrupted then
if state.Buff[spell.name] ~= nil then
state.Buff[spell.name] = true
elseif spell.name == "Afflatus Misery" then
state.Buff['Afflatus Solace'] = false
end
end
end
-------------------------------------------------------------------------------------------------------------------
-- Customization hooks for idle and melee sets, after they've been automatically constructed.
-------------------------------------------------------------------------------------------------------------------
function customize_idle_set(idleSet)
if player.mpp < 90 and state.IdleMode == "Normal" and state.Defense.Active == false then
idleSet = set_combine(idleSet, sets.Owleyes)
end
return idleSet
end
-------------------------------------------------------------------------------------------------------------------
-- General hooks for other events.
-------------------------------------------------------------------------------------------------------------------
-- Called when a player gains or loses a buff.
-- buff == buff gained or lost
-- gain == true if the buff was gained, false if it was lost.
function job_buff_change(buff, gain)
if state.Buff[buff] ~= nil then
state.Buff[buff] = gain
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called by the 'update' self-command.
function job_update(cmdParams, eventArgs)
if cmdParams[1] == 'user' and not areas.Cities:contains(world.area) then
local needsArts =
player.sub_job:lower() == 'sch' and
not buffactive['Light Arts'] and
not buffactive['Addendum: White'] and
not buffactive['Dark Arts'] and
not buffactive['Addendum: Black']
if not buffactive['Afflatus Solace'] and not buffactive['Afflatus Misery'] then
if needsArts then
send_command('@input /ja "Afflatus Solace" <me>;wait 1.2;input /ja "Light Arts" <me>')
else
send_command('@input /ja "Afflatus Solace" <me>')
end
end
end
end
-- Handle notifications of general user state change.
function job_state_change(stateField, newValue)
if stateField == 'OffenseMode' then
if newValue == 'Normal' then
disable('main','sub')
else
enable('main','sub')
end
elseif stateField == 'Reset' then
if state.OffenseMode == 'None' then
enable('main','sub')
end
end
end
-- Function to display the current relevant user state when doing an update.
-- Return true if display was handled, and you don't want the default info shown.
function display_current_job_state(eventArgs)
local defenseString = ''
if state.Defense.Active then
local defMode = state.Defense.PhysicalMode
if state.Defense.Type == 'Magical' then
defMode = state.Defense.MagicalMode
end
defenseString = 'Defense: '..state.Defense.Type..' '..defMode..', '
end
local meleeString = ''
if state.OffenseMode == 'Normal' then
meleeString = 'Melee: Weapons locked, '
end
add_to_chat(122,'Casting ['..state.CastingMode..'], '..meleeString..'Idle ['..state.IdleMode..'], '..defenseString..
'Kiting: '..on_off_names[state.Kiting])
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
function get_spell_class(spell, action, spellMap)
local spellclass
if spell.action_type == 'Magic' then
if spell.skill == "EnfeeblingMagic" then
if spell.type == "WhiteMagic" then
spellclass = "MndEnfeebles"
else
spellclass = "IntEnfeebles"
end
else
if spellMap == 'Cure' and state.Buff['Afflatus Solace'] then
spellclass = "CureSolace"
elseif (spellMap == 'Cure' or spellMap == "Curaga") and player.status == 'Engaged' and player.equipment.main ~= 'Yagrush' then
spellclass = "CureMelee"
end
end
end
return spellclass
end
Thank you for help
Is there a WHM who use a lua file with a good rule for Devotion ? (use of JA Devotion in a full HP set) ?
I precise that Devotion sacrifices 25% of your current HP to restore an equal amount of MP to the target (without merits), so what i want is to execute the JA when i'm a max HP set.
- Make a rules that equipping a midcast selfcure in maxhp (i have a function to equip a different set when i'm curing myself, so it can be a problem)
- Make a rules for an Idle set with MaxHP
- If possible, join a precast cure with lowHP (that's for the HP recover 500+ for Omen Objectives)
This is my lua :
Code require 'organizer-lib'
-------------------------------------------------------------------------------------------------------------------
-- Initialization function that defines sets and variables to be used.
-------------------------------------------------------------------------------------------------------------------
-- IMPORTANT: Make sure to also get the Mote-Include.lua file (and its supplementary files) to go with this.
-- Initialization function for this job file.
function get_sets()
-- Load and initialize the include file.
include('Mote-Include.lua')
end
-- Setup vars that are user-independent.
function job_setup()
state.Buff['Afflatus Solace'] = buffactive['afflatus solace'] or false
end
-- Setup vars that are user-dependent. Can override this function in a sidecar file.
function user_setup()
-- Options: Override default values
options.OffenseModes = {'None', 'Normal'}
options.DefenseModes = {'Normal'}
options.WeaponskillModes = {'Normal'}
options.CastingModes = {'Normal', 'Resistant', 'HP'}
options.IdleModes = {'Normal', 'PDT', 'HP'}
options.RestingModes = {'Normal'}
options.PhysicalDefenseModes = {'PDT'}
options.MagicalDefenseModes = {'MDT'}
state.Defense.PhysicalMode = 'PDT'
state.OffenseMode = 'None'
-- Default macro set/book
set_macro_page(1, 3)
end
-- Called when this job file is unloaded (eg: job change)
function file_unload()
if binds_on_unload then
binds_on_unload()
end
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
-- Precast Sets
-- Fast cast sets for spells
sets.precast.FC = { main="Grioavolr",
sub="Clerisy strap +1",
ammo="Impatiens",
head="Nahtirah Hat",
body="Inyanga Jubbah +1",
hands={ name="Fanatic Gloves", augments={'MP+50','Healing magic skill +10','"Conserve MP"+7','"Fast Cast"+7',}},
legs="Artsieq Hose",
feet="Regal Pumps +1",
neck="Orunmila's Torque",
waist="Witful Belt",
left_ear="Enchntr. Earring +1",
right_ear="Loquac. Earring",
left_ring="Lebeche Ring",
right_ring="Rahab Ring",
back="Perimede Cape",
}
sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, { waist= "Siegel Sash"})
sets.precast.FC['Healing Magic'] = set_combine(sets.precast.FC, {main="Vadose Rod",sub="Chanter's Shield",legs="Ebers Pant. +1"})
sets.precast.FC.StatusRemoval = sets.precast.FC['Healing Magic']
sets.precast.FC.Stoneskin = set_combine(sets.precast.FC['Enhancing Magic'], {hands="Carapacho Cuffs",legs="Doyen Pants"})
sets.precast.FC.Cure = set_combine(sets.precast.FC.HealingMagic, {main="Ababinili +1",
sub="Clemency Grip",
ammo="Impatiens",
head={ name="Piety Cap +1", augments={'Enhances "Devotion" effect',}},
body="Inyanga Jubbah +1",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Doyen Pants",
feet="Hygieia Clogs +1",
neck="Orunmila's Torque",
waist="Acerbic Sash +1",
left_ear="Nourish. Earring +1",
right_ear="Mendi. Earring",
left_ring="Lebeche Ring",
right_ring="Rahab Ring",
back="Pahtli Cape",
})
sets.precast.FC.Curaga = sets.precast.FC.Cure
-- Precast sets to enhance JAs
sets.precast.JA.Benediction = {body="piety briault +1"}
sets.precast.JA.Devotion = {head="piety cap +1"}
-- Waltz set (chr and vit)
sets.precast.Waltz = {ear2="Roundel Earring"}
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
gear.default.weaponskill_neck = "fotia gorget"
gear.default.weaponskill_waist = "fotia belt"
sets.precast.WS = {}
sets.precast.WS['Flash Nova'] = {}
-- Midcast Sets
sets.midcast.FastRecast = {main="Sucellus",
sub="Chanter's Shield",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Fanatic Gloves",
legs={ name="Vanya Slops", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
feet="Medium's Sabots",
neck="incanter's torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
left_ring="Lebeche Ring",
right_ring="Prolix Ring",
back="Solemnity Cape",
}
-- Cure sets
gear.default.obi_waist = ""
gear.default.obi_back = ""
sets.midcast.CureSolace = {
main="Queller Rod",
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Ebers Bliaud +1",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Phalaina Locket",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Nourishing Earring +1",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
sets.midcast.Cure = {
main="Queller Rod",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Loricate Torque +1",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Nourishing Earring +1",
left_ring="Defending Ring",
right_ring="Dark Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
-- sets.midcast.Cure.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
--}
sets.midcast.Curaga = {
main="Queller Rod",
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Incanter's Torque",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back="Solemnity Cape",
}
sets.self_healing = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Phalaina Locket",
waist="Gishdubar Sash",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Asklepian Ring",
right_ring="Kunaji Ring",
back={ name="Alaunus's Cape", augments={'MND+20','Eva.+20 /Mag. Eva.+20','"Cure" potency +10%',}},
}
-- sets.self_healing.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
--}
sets.midcast.CureMelee = {
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Kaykaus Bliaut",
hands={ name="Vanya Cuffs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
legs="Ebers Pant. +1",
feet={ name="Vanya Clogs", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
neck="Incanter's Torque",
waist="Austerity Belt +1",
left_ear="Glorious Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sirona's Ring",
back="Solemnity Cape",
}
sets.midcast.Cursna = {main="Yagrush",
sub="Thuellaic ecu +1",
ammo="Incantor Stone",
head="Ebers Cap +1",
body="Ebers Bliaud +1",
hands="Fanatic Gloves",
legs="Theo. Pant. +1",
feet="Vanya Clogs",
neck="Debilis Medallion",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
left_ring="Haoma's Ring",
right_ring="Haoma's Ring",
back="Alaunus's Cape",
}
sets.midcast.StatusRemoval = {main="Yagrush",
sub="Thuellaic ecu +1",
ammo="Pemphredo Tathlum",
head="Ebers Cap +1",
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Fanatic Gloves",
legs="Ebers Pant. +1",
feet="Medium's Sabots",
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast['Enhancing Magic'] = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +10',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Fi Follet Cape +1",
}
sets.midcast.Haste = set_combine(sets.midcast.Aquaveil, {head="Telchine Cap",Body="Telchine Chasuble",hands="Telchine Gloves",legs="Telchine Braconi",feet="Telchine Pigaches"})
sets.midcast.Refresh = set_combine(sets.midcast.Aquaveil, {head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},waist="Gishdubar Sash",feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},back="Grapevine Cape"})
sets.midcast.Shell = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Protect = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Stoneskin = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Shedir Seraweels",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Stone Gorget",
waist="Siegel Sash",
left_ear="Gifted Earring",
right_ear="Earthcry Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Aquaveil = {main="Vadose Rod",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="chironic hat",
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Shedir Seraweels",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="incanter's torque",
waist="Emphatikos Rope",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Auspice = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body={ name="Kaykaus Bliaut", augments={'MP+60','"Cure" potency +5%','"Conserve MP"+6',}},
hands="Dynasty Mitts",
legs={ name="Vanya Slops", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
feet="Ebers Duckbills +1",
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.BarElement = {main="Beneficus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="Ebers Cap +1",
body="Ebers Bliaud +1",
hands="Ebers Mitts +1",
legs="Piety Pantaloons +1",
feet="Ebers Duckbills +1",
neck="incanter's torque",
waist="Olympus Sash",
left_ear="Andoaa Earring",
right_ear="Mendicant's Earring",
left_ring="Defending Ring",
right_ring="Dark Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Regen = {main="Bolelabunga",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head="Inyanga Tiara +1",
body={ name="Piety Briault +1", augments={'Enhances "Benediction" effect',}},
hands="Ebers Mitts +1",
legs="Theo. Pant. +1",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="incanter's torque",
waist="Austerity Belt +1",
left_ear="Gifted Earring",
right_ear="Mendicant's Earring",
back="Fi Follet Cape +1",
}
sets.midcast.Protectra = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs={ name="Telchine Braconi", augments={'Enh. Mag. eff. dur. +9',}},
feet="Piety Duckbills +1",
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast.Shellra = {main="Sucellus",
sub="Thuellaic Ecu +1",
ammo="Pemphredo Tathlum",
head={ name="Telchine Cap", augments={'Enh. Mag. eff. dur. +10',}},
body={ name="Telchine Chas.", augments={'Enh. Mag. eff. dur. +10',}},
hands={ name="Telchine Gloves", augments={'Enh. Mag. eff. dur. +9',}},
legs="Piety Pantaloons +1",
feet={ name="Telchine Pigaches", augments={'Enh. Mag. eff. dur. +9',}},
neck="Incanter's Torque",
waist="Gishdubar Sash",
left_ear="Gifted Earring",
right_ear="Mendi. Earring",
left_ring="Defending Ring",
right_ring="Sheltered Ring",
back="Fi Follet Cape +1",
}
sets.midcast['Divine Magic'] = {hands="Fanatic Gloves",}
sets.midcast['Dark Magic'] = {}
--sets.midcast.Stun = set_combine(sets.midcast.DarkMagic, {main=gear.RecastStaff})
-- Custom spell classes
sets.midcast['Enfeebling Magic'] = {main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Chanter's Shield",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body="Vanya Robe",
hands="Inyanga Dastanas +1",
legs="Chironic Hose",
feet="Medium's Sabots",
neck="incanter's torque",
waist="Rumination Sash",
left_ear="Dignitary's Earring",
right_ear="Enfeebling Earring",
left_ring="Globidonta Ring",
right_ring="Sangoma Ring",
back="Altruistic Cape",
}
sets.midcast.MndEnfeebles = {
main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Thuellaic Ecu +1",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body={ name="Vanya Robe", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
hands="Inyan. Dastanas +1",
legs={ name="Chironic Hose", augments={'Mag. Acc.+11 "Mag.Atk.Bns."+11','MND+7','Mag. Acc.+14',}},
feet={ name="Medium's Sabots", augments={'MP+50','MND+10','"Conserve MP"+7','"Cure" potency +5%',}},
neck="Incanter's Torque",
waist="Rumination Sash",
left_ear="Digni. Earring",
right_ear="Enfeebling Earring",
left_ring="Stikini Ring +1",
right_ring="Stikini Ring",
back="Altruistic Cape",
}
sets.midcast.IntEnfeebles = {
main={ name="Gada", augments={'Enh. Mag. eff. dur. +6','"Mag.Atk.Bns."+7',}},
sub="Thuellaic Ecu +1",
ammo="Quartz Tathlum +1",
head="Befouled Crown",
body={ name="Vanya Robe", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
hands="Inyan. Dastanas +1",
legs={ name="Chironic Hose", augments={'Mag. Acc.+11 "Mag.Atk.Bns."+11','MND+7','Mag. Acc.+14',}},
feet={ name="Medium's Sabots", augments={'MP+50','MND+10','"Conserve MP"+7','"Cure" potency +5%',}},
neck="Incanter's Torque",
waist="Rumination Sash",
left_ear="Digni. Earring",
right_ear="Enfeebling Earring",
left_ring="Stikini Ring +1",
right_ring="Stikini Ring",
back="Altruistic Cape",
}
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {main="Boonwell Staff", sub="Oneiros Grip"}
-- Idle sets (default idle set not needed since the other three are defined, but leaving for testing purposes)
sets.idle = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
sets.idle.HP = {
main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub={ name="Genbu's Shield", augments={'"Cure" potency +3%','"Cure" spellcasting time -8%','HP+22',}},
ammo="Homiliary",
head="Nahtirah Hat",
body="Ebers Bliaud +1",
hands={ name="Telchine Gloves", augments={'Pet: "Regen"+3','Pet: Damage taken -3%',}},
legs={ name="Piety Pantaln. +1", augments={'Enhances "Shellra V" effect',}},
feet="Ebers Duckbills +1",
neck="Dualism Collar +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="K'ayres Ring",
right_ring="Kunaji Ring",
back="Solemnity Cape",
}
sets.idle.PDT = {main="Mafic Cudgel",
sub="Genmei Shield",
ammo="Homiliary",
head={ name="Vanya Hood", augments={'Healing magic skill +20','"Cure" spellcasting time -7%','Magic dmg. taken -3',}},
body="Vrikodara Jupon",
hands="Shrieker's Cuffs",
legs="Artsieq Hose",
feet="Battlecast Gaiters",
neck="Loricate Torque +1",
waist="Rumination Sash",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",
}
sets.idle.Town = {main="Yagrush",
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",
}
sets.idle.Weak = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
sets.Owleyes = {main={ name="Queller Rod", augments={'MP+80','"Cure" potency +15%','Enmity-5',}},
sub="Genmei Shield",
ammo="Homiliary",
head="Befouled Crown",
body={ name="Witching Robe", augments={'MP+50','Mag. Acc.+15','"Mag.Atk.Bns."+15','"Refresh"+1',}},
hands="Shrieker's Cuffs",
legs="Assid. Pants +1",
feet="Crier's Gaiters",
neck="Loricate Torque +1",
waist="Fucho-no-Obi",
left_ear="Etiolation Earring",
right_ear={ name="Moonshade Earring", augments={'MP+25','Latent effect: "Refresh"+1',}},
left_ring="Defending Ring",
right_ring={ name="Dark Ring", augments={'Phys. dmg. taken -6%','Magic dmg. taken -6%',}},
back="Solemnity Cape",}
-- Defense sets
sets.defense.PDT = {}
sets.defense.MDT = {}
sets.Kiting = {feet="crier's gaiters"}
-- 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
-- Basic set for if no TP weapon is defined.
sets.engaged = {}
-- Buff sets: Gear that needs to be worn to actively enhance a current player buff.
sets.buff['Divine Caress'] = {hands="ebers mitts +1",back="Mending Cape"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks that are called to process player actions at specific points in time.
-------------------------------------------------------------------------------------------------------------------
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
-- Set eventArgs.useMidcastGear to true if we want midcast gear equipped on precast.
function job_precast(spell, action, spellMap, eventArgs)
classes.CustomClass = get_spell_class(spell, action, spellMap)
if spell.english == "Paralyna" and buffactive.Paralyzed then
-- no gear swaps if we're paralyzed, to avoid blinking while trying to remove it.
eventArgs.handled = true
end
if spell.skill == 'HealingMagic' then
gear.default.obi_back = "Pahtli Cape"
else
gear.default.obi_back = "Pahtli Cape"
end
end
-- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done.
function job_midcast(spell, action, spellMap, eventArgs)
if spell.action_type == 'Magic' then
-- Default base equipment layer of fast recast.
equip(sets.midcast.FastRecast)
end
end
function job_post_midcast(spell, action, spellMap, eventArgs)
if spellMap == 'Cure' and spell.target.type == 'SELF' and sets.self_healing then
equip(sets.self_healing)
end
-- Apply Divine Caress boosting items as highest priority over other gear, if applicable.
if spellMap == 'StatusRemoval' and buffactive['Divine Caress'] then
equip(sets.buff['Divine Caress'])
end
end
-- Return true if we handled the aftercast work. Otherwise it will fall back
-- to the general aftercast() code in Mote-Include.
function job_aftercast(spell, action, spellMap, eventArgs)
if not spell.interrupted then
if state.Buff[spell.name] ~= nil then
state.Buff[spell.name] = true
elseif spell.name == "Afflatus Misery" then
state.Buff['Afflatus Solace'] = false
end
end
end
-------------------------------------------------------------------------------------------------------------------
-- Customization hooks for idle and melee sets, after they've been automatically constructed.
-------------------------------------------------------------------------------------------------------------------
function customize_idle_set(idleSet)
if player.mpp < 90 and state.IdleMode == "Normal" and state.Defense.Active == false then
idleSet = set_combine(idleSet, sets.Owleyes)
end
return idleSet
end
-------------------------------------------------------------------------------------------------------------------
-- General hooks for other events.
-------------------------------------------------------------------------------------------------------------------
-- Called when a player gains or loses a buff.
-- buff == buff gained or lost
-- gain == true if the buff was gained, false if it was lost.
function job_buff_change(buff, gain)
if state.Buff[buff] ~= nil then
state.Buff[buff] = gain
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called by the 'update' self-command.
function job_update(cmdParams, eventArgs)
if cmdParams[1] == 'user' and not areas.Cities:contains(world.area) then
local needsArts =
player.sub_job:lower() == 'sch' and
not buffactive['Light Arts'] and
not buffactive['Addendum: White'] and
not buffactive['Dark Arts'] and
not buffactive['Addendum: Black']
if not buffactive['Afflatus Solace'] and not buffactive['Afflatus Misery'] then
if needsArts then
send_command('@input /ja "Afflatus Solace" <me>;wait 1.2;input /ja "Light Arts" <me>')
else
send_command('@input /ja "Afflatus Solace" <me>')
end
end
end
end
-- Handle notifications of general user state change.
function job_state_change(stateField, newValue)
if stateField == 'OffenseMode' then
if newValue == 'Normal' then
disable('main','sub')
else
enable('main','sub')
end
elseif stateField == 'Reset' then
if state.OffenseMode == 'None' then
enable('main','sub')
end
end
end
-- Function to display the current relevant user state when doing an update.
-- Return true if display was handled, and you don't want the default info shown.
function display_current_job_state(eventArgs)
local defenseString = ''
if state.Defense.Active then
local defMode = state.Defense.PhysicalMode
if state.Defense.Type == 'Magical' then
defMode = state.Defense.MagicalMode
end
defenseString = 'Defense: '..state.Defense.Type..' '..defMode..', '
end
local meleeString = ''
if state.OffenseMode == 'Normal' then
meleeString = 'Melee: Weapons locked, '
end
add_to_chat(122,'Casting ['..state.CastingMode..'], '..meleeString..'Idle ['..state.IdleMode..'], '..defenseString..
'Kiting: '..on_off_names[state.Kiting])
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
function get_spell_class(spell, action, spellMap)
local spellclass
if spell.action_type == 'Magic' then
if spell.skill == "EnfeeblingMagic" then
if spell.type == "WhiteMagic" then
spellclass = "MndEnfeebles"
else
spellclass = "IntEnfeebles"
end
else
if spellMap == 'Cure' and state.Buff['Afflatus Solace'] then
spellclass = "CureSolace"
elseif (spellMap == 'Cure' or spellMap == "Curaga") and player.status == 'Engaged' and player.equipment.main ~= 'Yagrush' then
spellclass = "CureMelee"
end
end
end
return spellclass
end
Thank you for help
|
|