(Don't) Fear The Reaper: A Dark Knight Guide |
||
(Don't) Fear the Reaper: A Dark Knight Guide
Yeah, but the relative impact of each point of STP is different for each set, so whether it was R0 or R20 would still make a difference in the comparison between the sets.
Offline
Posts: 9078
Asura.Geriond said: » Yeah, but the relative impact of each point of STP is different for each set, so whether it was R0 or R20 would still make a difference in the comparison between the sets. True, but I just used his set with R0 gloves vs 5/5 R0 Sakpata, then his set with R20 gloves and 5/5 R20 Sakpata, so there was never a situation of difference on hands :) Hello, apologies if this has been asked a million times before but all the Dark Knight resources seem to be out of date.
I have a friend who is new to the game, but is approaching 99 on DRK pretty fast. I know nothing about DRK, So what would be the best weapon for use for DRK now? for both GS and Scythe? A link to any updated resources would also be appreciated. Online
Posts: 2536
cost-effectiveness and speed wise, though this varies on pulse supply/cost is the ambu gaxe is great while you work towards a rema scythe or calad.
Far as what scythe/gs to use before any rema, believe montate+1 is still one of the better and easier to get GS while with scythe you can start with the ruann one and work up towards raetic, though in both cases if you can grab the odyssey weapons those will likely be the overall better choices Thank you! what about the REMA hierachy for the job?
Online
Posts: 2536
Apoc always has a place in the arsenal due to Cata, where you place that just depends on your own playstyle. Far as raw dmg goes R15 liberator is the way to go, though anguta/redemption arent that far behind either, cant really go wrong with any of the three.
Calad's basically in its own league since there isnt really any other GS options for drk aside from ragnarok, and rags just not all that great outside of the tiny niche of a fusion WS that you could just use a different weapon for. That's great. Sounds like he should go for Apoc first then since it's the chepest and easily obtainable from those and then work his way towards a Calad. thanks for the help, appreciate it!
Asura.Diluted said: » Hello, apologies if this has been asked a million times before but all the Dark Knight resources seem to be out of date. I have a friend who is new to the game, but is approaching 99 on DRK pretty fast. I know nothing about DRK, So what would be the best weapon for use for DRK now? for both GS and Scythe? A link to any updated resources would also be appreciated. If your friend can get their hands on a pulse weapon, I highly recommend starting with the Ambuscade Great Axe, Lycurgos. https://www.ffxiah.com/forum/topic/35174/dont-fear-the-reaper-a-dark-knight-guide/188/#3534564 Have your friend focus on playing with Lycurgos as best they can. Since its TP bonus effect is based around current and max HP, it encourages good Drain habits, not just for defense, but for offense as well. As far as non-REMA Scythe and Great Sword weapons go, I still recommend pairing whatever ilvl 119 scythe your friend can find with a raetic algol +1. Don't worry about optimizing scythe damage at the start, the objective is to have a point into Entropy, and to use the scythe to refill MP. Damage will come from spamming Torcleaver with Raetic. This is something of a challenging play style for a new player, constantly draining your MP and switching weapons to refill the MP tank, but it is FUN. And ideally your friend will have been playing with Lycurgos long enough to get the fundamentals down at this point, as they will need 550 JP to equip Raetic. As far as other weapons go, montante +1 is really strong, but I think raetic algol +1 is more fun to use. For a new player I would prioritize getting more enjoyment out of learning the job before focusing on raw numbers. As far as starting REMA weapons go, the two weapons to point a newbie towards are Apocalypse and Caladbolg. Which to do first depends on what the player wants to focus on. Apocalypse opens up new worlds of survivability and utility that Dark Knight does not get from any other weapon. Caladbolg on the other hand is a damage machine that is easy (perhaps too easy) to get top-notch damage out of. As far as the other REMA, don't worry your friend about them until both Apoc and Calad are done. If they have followed my advice up to this point they are certainly no longer newbie Drks and can choose to explore the other options as they like. Anyone using the oddysea gear in there scythe ws sets
gazzerl said: » Anyone using the oddysea gear in there scythe ws sets Kinda what what odyssey gear is best for tp and WS, I do. Have access to the sakpata set, but wondering what upgraded unity gear and best sakpata gear to use is. Is there updated sets someone anyone can point me to for reference? Just have an Apoc and Rag for now, gonna be starting on Calad and Lib in the coming weeks. Offline
Posts: 12
Hey guys I have a question about Ambu Scythe, is it worth it in any way? I was thinking about eventually getting one just for /lockstyle. Drepanum looks cool af
Online
Posts: 2536
far as drk itself goes, decent hold over til rema I guess and it makes a nice SoD weapon if no anguta, might even be better than it, sides that its novelty, drk wise. Pretty good for WAR
Kyniker said: » Hey guys I have a question about Ambu Scythe, is it worth it in any way? I was thinking about eventually getting one just for /lockstyle. Drepanum looks cool af If you need a weapon to actually use I'd do great axe, axe, or sword first, since each of those can do well on both dark knight as well as having use other jobs. Scythe is kinda-sorta ok on warrior but that's about it (I do have one but I had a ton of pulse weapons). Leviathan.Celebrindal
Online
Asura.Sirris said: » Kyniker said: » Hey guys I have a question about Ambu Scythe, is it worth it in any way? I was thinking about eventually getting one just for /lockstyle. Drepanum looks cool af If you need a weapon to actually use I'd do great axe, axe, or sword first, since each of those can do well on both dark knight as well as having use other jobs. Scythe is kinda-sorta ok on warrior but that's about it (I do have one but I had a ton of pulse weapons). I'd agree. Ambu Scythe would be a solid holdover until a better option, but the Ambu Gaxe will do that and stay in your arsenal for unique situations even if you build every RMEA for DRK. And that's not even contemplating usage on other jobs. Anyone have a current lua that detects aftermath. Some of the ones I've found don't work all that great
Online
Posts: 3549
Here is my LUA for DRK. (I don't recall who made the base LUA but they did a good job)
Code ------------------------------------------------------------------------------------------------------------------- -- 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() state.CapacityMode = M(false, 'Capacity Point Mantle') include('Mote-TreasureHunter') state.TreasureMode:set('None') state.Buff.Souleater = buffactive.souleater or false state.Buff['Last Resort'] = buffactive['Last Resort'] or false -- Set the default to false if you'd rather SE always stay acitve state.SouleaterMode = M(true, 'Soul Eater Mode') -- state.LastResortMode = M(false, 'Last Resort Mode') -- Use Gavialis helm? use_gavialis = true -- Weaponskills you want Gavialis helm used with (only considered if use_gavialis = true) wsList = S{} -- Greatswords you use. gsList = S{'Ragnarok','Caladbolg'} scytheList = S{'Liberator', 'Apocalypse'} remaWeapons = S{'Apocalypse', 'Liberator', 'Caladbolg', 'Ragnarok'} shields = S{} -- Mote has capitalization errors in the default Absorb mappings, so we use our own absorbs = S{'Absorb-STR', 'Absorb-DEX', 'Absorb-VIT', 'Absorb-AGI', 'Absorb-INT', 'Absorb-MND', 'Absorb-CHR', 'Absorb-Attri', 'Absorb-MaxAcc', 'Absorb-TP'} -- Offhand weapons used to activate DW mode swordList = S{} get_combat_form() get_combat_weapon() update_melee_groups() end ------------------------------------------------------------------------------------------------------------------- -- User setup functions for this job. Recommend that these be overridden in a sidecar file. ------------------------------------------------------------------------------------------------------------------- -- Setup vars that are user-dependent. Can override this function in a sidecar file. function user_setup() state.OffenseMode:options('Normal', 'STP', 'MidAcc', 'MaxAcc') state.HybridMode:options('Normal', 'Meva', 'PDT') state.WeaponskillMode:options('Normal', 'MaxAcc', 'Max') ---Max for Scythe removes Ratri for safer WS---For Resolution removes Agrosy for Meva--- state.CastingMode:options('Normal', 'Resistant') state.PhysicalDefenseMode:options('PDT', 'HP') state.MagicalDefenseMode:options('MDT', 'HP') war_sj = player.sub_job == 'WAR' or false -- Additional local binds send_command('bind ^= gs c cycle treasuremode') send_command('bind != gs c toggle CapacityMode') send_command('bind @f9 gs c toggle SouleaterMode') select_default_macro_book() end function user_unload() send_command('unbind ^f11') send_command('unbind !f11') send_command('unbind @f10') send_command('unbind @f11') end -- Define sets and vars used by this job file. function init_gear_sets() -------------------------------------- -- Precast sets -------------------------------------- -- Precast sets to enhance JAs sets.precast.JA['Last Resort'] = {back="Ankou's mantle"} sets.precast.JA['Nether Void'] = {Legs="Heathen's Flanchard +1"} sets.precast.JA['Blood Weapon'] = {body="Fallen's Cuirass +3"} sets.precast.JA['Arcane Circle'] = {feet="Ignominy Sollerets +3"} sets.precast.JA['Weapon Bash'] = {hands="Ignominy Gauntlets +3"} sets.precast.JA['Souleater'] = {head="Ignominy Burgonet +3"} sets.precast.JA['Dark Seal'] = {head="Fallen's Burgeonet +3"} sets.precast.JA['Diabolic Eye'] = {hands="Fall. Fin. Gaunt. +3"} -- Waltz set (chr and vit) sets.precast.Waltz = {} -- Don't need any special gear for Healing Waltz. sets.precast.Waltz['Healing Waltz'] = {} sets.precast.Step = {waist="Chaac Belt"} sets.precast.Flourish1 = {waist="Chaac Belt"} -- 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={ name="Leyline Gloves", augments={'Accuracy+14','Mag. Acc.+13','"Mag.Atk.Bns."+13','"Fast Cast"+2',}}, legs="Sakpata's Cuisses", feet={ name="Carmine Greaves +1", augments={'HP+80','MP+80','Phys. dmg. taken -4',}}, neck="Orunmila's Torque", waist="Tempus Fugit +1", left_ear="Malignance Earring", right_ear="Enchntr. Earring +1", left_ring="Prolix Ring", right_ring="Kishar Ring", back={ name="Ankou's Mantle", augments={'INT+20','Mag. Acc+20 /Mag. Dmg.+20','"Fast Cast"+10',}}, } sets.precast.FC['Enhancing Magic'] = set_combine(sets.precast.FC, {waist="Siegel Sash"}) -- Weaponskill sets -- Default set for any weaponskill that isn't any more specifically defined sets.precast.WS = {ammo="Knobkierrie", head={ name="Valorous Mask", augments={'Accuracy+27','Weapon skill damage +5%','DEX+4',}}, body="Ignominy Cuirass +3", hands={ name="Valorous Mitts", augments={'Mag. Acc.+22','Attack+3','Weapon skill damage +10%','Mag. Acc.+8 "Mag.Atk.Bns."+8',}}, legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Sulev. Leggings +2", neck={ name="Abyssal Beads +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="Niqmaddu Ring", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}, } sets.precast.WS.MaxAcc = set_combine(sets.precast.WS, {waist="Fotia belt", left_ring="Regal Ring"}) sets.precast.WS.Max = set_combine(sets.precast.WS, {waist="Fotia belt", left_ring="Regal Ring"}) -- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found. sets.precast.WS['Catastrophe'] = {ammo="Knobkierrie", head="Sakpata's Helm", body="Ignominy Cuirass +3", hands={ name="Valorous Mitts", augments={'Mag. Acc.+22','Attack+3','Weapon skill damage +10%','Mag. Acc.+8 "Mag.Atk.Bns."+8',}}, legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Rat. Sollerets +1", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Lugra Earring +1", right_ear="Thrud Earring", left_ring="Niqmaddu Ring", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}, } sets.precast.WS['Catastrophe'].MaxAcc = set_combine(sets.precast.WS['Catastrophe'], {left_ring="Regal Ring"}) sets.precast.WS['Catastrophe'].Max = set_combine(sets.precast.WS['Catastrophe'], {head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", left_ring="Regal Ring"}) sets.precast.WS['Insurgency'] = {ammo="Knobkierrie", head={ name="Stinger Helm +1", augments={'Path: A',}}, body="Ignominy Cuirass +3", hands={ name="Valorous Mitts", augments={'Mag. Acc.+22','Attack+3','Weapon skill damage +10%','Mag. Acc.+8 "Mag.Atk.Bns."+8',}}, legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Rat. Sollerets +1", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear={ name="Lugra Earring +1", augments={'Path: A',}}, right_ear="Thrud Earring", left_ring="Niqmaddu Ring", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}, } sets.precast.WS['Insurgency'].MaxAcc = set_combine(sets.precast.WS['Insurgency'], {left_ring="Regal Ring"}) sets.precast.WS['Insurgency'].Max = set_combine(sets.precast.WS['Insurgency'], {head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", left_ring="Regal Ring"}) sets.precast.WS['Cross Reaper'] = {ammo="Knobkierrie", head={ name="Stinger Helm +1", augments={'Path: A',}}, body="Ignominy Cuirass +3", hands={ name="Valorous Mitts", augments={'Mag. Acc.+22','Attack+3','Weapon skill damage +10%','Mag. Acc.+8 "Mag.Atk.Bns."+8',}}, legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Rat. Sollerets +1", neck={ name="Abyssal Beads +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="Lugra Earring +1", left_ring="Niqmaddu Ring", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'STR+20','Accuracy+20 Attack+20','STR+10','Weapon skill damage +10%',}}, } sets.precast.WS['Cross Reaper'].MaxAcc = set_combine(sets.precast.WS['Catastrophe'], {left_ring="Regal Ring"}) sets.precast.WS['Cross Reaper'].Max = set_combine(sets.precast.WS['Catastrophe'], {head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", left_ring="Regal Ring"}) sets.precast.WS['Resolution'] = {ammo={ name="Seeth. Bomblet +1", augments={'Path: A',}}, head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck="Fotia Gorget", waist="Fotia Belt", left_ear={ name="Moonshade Earring", augments={'Attack+4','TP Bonus +250',}}, right_ear="Lugra Earring +1", left_ring="Niqmaddu Ring", right_ring="Regal Ring", back={ name="Ankou's Mantle", augments={'STR+20','Accuracy+20 Attack+20','"Dbl.Atk."+10',}}, } sets.precast.WS['Resolution'].MaxAcc = set_combine(sets.precast.WS['Resolution'], {legs="Ig. Flanchard +3",right_ear="Telos Earring", left_ring="Regal Ring",right_ring="Flamma Ring",}) sets.precast.WS['Resolution'].Max = set_combine(sets.precast.WS['Resolution'], {body="Flamma Korazin +2", hands="Flam. Manopolas +2",legs="Ig. Flanchard +3",left_ring="Regal Ring",right_ring="Flamma Ring"}) sets.precast.WS['Scourge'] = set_combine(sets.precast.WS['Torcleaver'], {left_ring="Regal Ring"}) sets.precast.WS['Scourge'].MaxAcc = set_combine(sets.precast.WS['Torcleaver'], {left_ring="Regal Ring"}) sets.precast.WS['Scourge'].Max = set_combine(sets.precast.WS['Torcleaver'], {left_ring="Regal Ring"}) sets.precast.WS['Torcleaver'] = {ammo="Knobkierrie", head="Sakpata's Helm", body="Ignominy Cuirass +3", hands="Sakpata's Gauntlets", legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Sulev. Leggings +2", neck={ name="Abyssal Beads +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="Niqmaddu Ring", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','VIT+10','Weapon skill damage +10%','Damage taken-5%',}}, } sets.precast.WS['Torcleaver'].MaxAcc = set_combine(sets.precast.WS['Torcleaver'], {left_ring="Regal Ring"}) sets.precast.WS['Torcleaver'].Max = set_combine(sets.precast.WS['Torcleaver'], {head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings",left_ring="Regal Ring"}) sets.precast.WS['Scourge'] = set_combine(sets.precast.WS, {left_ear="Kikou's earring"}) sets.precast.WS['Scourge'].MaxAcc = set_combine(sets.precast.WS.MaxAcc, {left_ear="Kikou's earring"}) sets.precast.WS['Scourge'].Max = set_combine(sets.precast.WS.Max, {left_ear="Kikou's earring"}) -------------------------------------- -- Midcast sets -------------------------------------- sets.midcast.FastRecast = {} sets.midcast.Enmity = {} sets.midcast.Stun = set_combine(sets.midcast['Dark Magic'], {}) sets.midcast.Cure = {} sets.midcast['Dread Spikes'] = {ammo="Egoist's Tathlum", head="Sakpata's Helm", body="Heathen's Cuirass +1", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck="Bathy Choker +1", waist="Gold Mog. Belt", left_ear="Tuisto Earring", right_ear="Odnowa Earring +1", left_ring="Moonlight Ring", right_ring="Moonlight Ring", back="Moonlight Cape", } sets.midcast['Dark Magic'] = {ammo="Pemphredo Tathlum", head={ name="Fall. Burgeonet +3", augments={'Enhances "Dark Seal" effect',}}, body={ name="Fall. Cuirass +3", augments={'Enhances "Blood Weapon" effect',}}, hands={ name="Fall. Fin. Gaunt. +3", augments={'Enhances "Diabolic Eye" effect',}}, legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Rat. Sollerets +1", neck="Erra Pendant", waist="Casso Sash", left_ear="Malignance Earring", right_ear="Dignitary's Earring", left_ring="Evanescence Ring", right_ring="Archon Ring", back={ name="Ankou's Mantle", augments={'INT+20','Mag. MaxAcc+20 /Mag. Dmg.+20','"Fast Cast"+10',}}, } sets.midcast.Absorb = set_combine(sets.midcast['Dark Magic'], { head="Ignominy Burgonet +2", -- 17 -- neck="Sanctity Necklace", -- back="Niht Mantle", -- hands="Flamma Manopolas +2", back="Chuparrosa Mantle", hands="Pavor Gauntlets", ring1="Evanescence Ring", -- 10 ring2="Kishar Ring", }) -- Drain spells sets.midcast.Drain = set_combine(sets.midcast['Dark Magic'], { head="Fallen's Burgeonet +3", ear1="Malignance Earring", ear2="Hirudinea Earring", ring2="Excelsis Ring", feet="Ratri Sollerets +1" }) sets.midcast.Aspir = sets.midcast.Drain sets.midcast.Drain.Acc = set_combine(sets.midcast.Drain, { hands="Leyline Gloves", waist="Eschan Stone", -- macc/matk 7 }) sets.midcast.Aspir.Acc = sets.midcast.Drain.Acc sets.midcast['Elemental Magic'] = { ammo="Pemphredo Tathlum", head="Ratri Sallet +1", -- 45 macc neck="Eddy Necklace", -- 11 matk ear1="Malignance Earring", ear2="Friomisi Earring", -- 10 matk body="Fallen's Cuirass +3", hands="Carmine Finger Gauntlets +1", ring1="Resonance Ring", -- int 8 ring2="Regal Ring", -- matk 4 waist="Eschan Stone", -- macc/matk 7 legs="Eschite Cuisses", -- matk 25 back="Aput Mantle", -- mdmg 10 feet="Founder's Greaves" -- matk 29 } sets.midcast['Enfeebling Magic'] = set_combine(sets.midcast['Dark Magic'], { ammo="Pemphredo Tathlum", head="Befouled Crown", neck="Erra Pendant", -- 10 + 17 macc body="Ignominy Cuirass +3", hands="Flamma Manopolas +2", ring1="Kishar Ring", ring2="Regal Ring", -- 10 macc waist="Eschan Stone", legs="Fallen's Flanchard +3", -- 18 + 39macc back="Aput Mantle", feet="Flamma Gambieras +2" }) -------------------------------------- -- Idle/resting/defense/etc sets -------------------------------------- -- Idle sets sets.idle = {ammo="Staunch Tathlum +1", head={ name="Valorous Mask", augments={'Accuracy+16','MND+13','"Refresh"+2','Accuracy+16 Attack+16','Mag. Acc.+19 "Mag.Atk.Bns."+19',}}, body="Chozor. Coselete", hands={ name="Valorous Mitts", augments={'"Fast Cast"+5','AGI+6','"Refresh"+2','Accuracy+4 Attack+4','Mag. Acc.+11 "Mag.Atk.Bns."+11',}}, legs="Sulev. Cuisses +2", feet={ name="Amm Greaves", augments={'HP+50','VIT+10','Accuracy+15','Damage taken-2%',}}, neck="Coatl Gorget +1", waist="Flume Belt +1", left_ear="Infused Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring="Stikini Ring +1", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','VIT+10','Weapon skill damage +10%','Damage taken-5%',}}, } sets.idle.Town = {ammo="Aurgelmir Orb +1", head="Ratri Sallet +1", body="Sacro Breastplate", hands="Rat. Gadlings +1", legs={ name="Fall. Flanchard +3", augments={'Enhances "Muted Soul" effect',}}, feet="Rat. Sollerets +1", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Infused Earring", right_ear={ name="Lugra Earring +1", augments={'Path: A',}}, left_ring="Stikini Ring +1", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'VIT+20','MaxAccuracy+20 Attack+20','VIT+10','Weapon skill damage +10%','Damage taken-5%',}}, } sets.idle.Field = set_combine(sets.idle, {ammo="Staunch Tathlum +1", head={ name="Valorous Mask", augments={'Accuracy+16','MND+13','"Refresh"+2','Accuracy+16 Attack+16','Mag. Acc.+19 "Mag.Atk.Bns."+19',}}, body="Sacro Breastplate", hands={ name="Valorous Mitts", augments={'"Fast Cast"+5','AGI+6','"Refresh"+2','Accuracy+4 Attack+4','Mag. Acc.+11 "Mag.Atk.Bns."+11',}}, legs="Sulev. Cuisses +2", feet={ name="Amm Greaves", augments={'HP+50','VIT+10','Accuracy+15','Damage taken-2%',}}, neck="Coatl Gorget +1", waist="Flume Belt +1", left_ear="Infused Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring="Stikini Ring +1", right_ring="Karieyh Ring +1", back={ name="Ankou's Mantle", augments={'VIT+20','Accuracy+20 Attack+20','VIT+10','Weapon skill damage +10%','Damage taken-5%',}}, }) sets.idle.Regen = set_combine(sets.idle.Field, {}) sets.idle.Weak = sets.idle sets.idle.Refresh = set_combine(sets.idle, { head={ name="Valorous Mask", augments={'MaxAccuracy+16','MND+13','"Refresh"+2','MaxAccuracy+16 Attack+16','Mag. MaxAcc.+19 "Mag.Atk.Bns."+19',}}, body="Chozor. Coselete", hands={ name="Valorous Mitts", augments={'"Fast Cast"+5','AGI+6','"Refresh"+2','MaxAccuracy+4 Attack+4','Mag. MaxAcc.+11 "Mag.Atk.Bns."+11',}}, left_ring="Stikini Ring +1", }) sets.idle.Sphere = set_combine(sets.idle, { body="Makora Meikogai" }) -------------------------------------- -- Defense sets -------------------------------------- -- Basic defense sets. sets.defense.PDT = {ammo="Staunch Tathlum +1", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Loricate Torque +1", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Tuisto Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring={ name="Gelatinous Ring +1", augments={'Path: A',}}, right_ring="Moonlight Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.defense.HP = {ammo="Staunch Tathlum +1", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Loricate Torque +1", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Tuisto Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring={ name="Gelatinous Ring +1", augments={'Path: A',}}, right_ring="Moonlight Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.defense.MDT = {ammo="Staunch tathlum", head="Sulevia's mask +1",neck="Warder's Charm +1",ear1="Odnowa Earring",ear2="Odnowa Earring +1", body="Souveran cuirass",hands="Souveran handschuhs +1",ring1="Moonbeam Ring",ring2="Moonbeam Ring", back="Moonbeam cape",waist="Gold Moogle Belt",legs="Souveran diechlings +1",feet="Souveran Schuhs +1"} -------------------------------------- -- Engaged sets -------------------------------------- sets.engaged ={ammo="Coiste Bodhar", head="Flam. Zucchetto +2", body="Dagon Breast.", hands="Sakpata's Gauntlets", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Cessance Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Chirich Ring +1", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.STP = {ammo="Aurgelmir Orb +1", head="Flam. Zucchetto +2", body="Flamma Korazin +2", hands="Flam. Manopolas +2", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Cessance Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Chirich Ring +1", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.MidAcc = {ammo="Aurgelmir orb +1", head="Flam. Zucchetto +2", body={ name="Emicho Haubert +1", augments={'HP+65','DEX+12','MaxAccuracy+20',}}, hands={ name="Emi. Gauntlets +1", augments={'HP+65','DEX+12','MaxAccuracy+20',}}, legs={ name="Odyssean Cuisses", augments={'"Dbl.Atk."+5','STR+2','MaxAccuracy+8','Attack+4',}}, feet="Flam. Gambieras +2", neck="Abyssal Beads +2", waist="Ioskeha Belt +1", left_ear="Cessance Earring", right_ear="Brutal Earring", left_ring="Niqmaddu Ring", right_ring="Flamma Ring", back={ name="Ankou's Mantle", augments={'DEX+20','MaxAccuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.MaxAcc = {ammo="Aurgelmir orb +1", head="Flam. Zucchetto +2", body={ name="Emicho Haubert +1", augments={'HP+65','DEX+12','MaxAccuracy+20',}}, hands={ name="Emi. Gauntlets +1", augments={'HP+65','DEX+12','MaxAccuracy+20',}}, legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck="Abyssal Beads +2", waist="Ioskeha Belt +1", left_ear="Cessance Earring", right_ear="Telos Earring", left_ring="Niqmaddu Ring", right_ring="Flamma Ring", back={ name="Ankou's Mantle", augments={'DEX+20','MaxAccuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } -- These only apply when delay is capped. sets.engaged.Haste = set_combine(sets.engaged, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Mid = set_combine(sets.engaged.Mid, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Acc = set_combine(sets.engaged.Acc, {}) sets.engaged.Meva = {ammo="Coiste Bodhar", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Brutal Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Petrov Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.PDT = {ammo={ name="Seeth. Bomblet +1", augments={'Path: A',}}, head="Hjarrandi Helm", body="Hjarrandi Breast.", hands="Flam. Manopolas +2", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Cessance Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring="Defending Ring", right_ring="Moonlight Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.MidAcc.Meva = set_combine(sets.engaged.Meva, {}) sets.engaged.MidAcc.PDT = {ammo={ name="Seeth. Bomblet +1", augments={'Path: A',}}, head="Hjarrandi Helm", body="Hjarrandi Breast.", hands="Flam. Manopolas +2", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Cessance Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring="Defending Ring", right_ring="Moonlight Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.MaxAcc.Meva = set_combine(sets.engaged.Meva, {}) sets.engaged.MaxAcc.PDT = {ammo={ name="Seeth. Bomblet +1", augments={'Path: A',}}, head="Hjarrandi Helm", body="Hjarrandi Breast.", hands="Flam. Manopolas +2", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Cessance Earring", right_ear={ name="Odnowa Earring +1", augments={'Path: A',}}, left_ring="Defending Ring", right_ring="Moonlight Ring", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } -- Liberator sets.engaged.Liberator = sets.engaged sets.engaged.Liberator.Mid = sets.engaged.Mid sets.engaged.Liberator.MaxAcc = set_combine(sets.engaged.MaxAcc, { body="Flamma Korazin +2", }) -- Liberator AM3 sets.engaged.Liberator.AM3 = set_combine(sets.engaged.Liberator, { ammo="Ginsen", head="Flamma Zucchetto +2", body="Hjarrandi Breast.", neck="Abyssal Bead Necklace +2", hands="Flamma Manopolas +2", ear1="Dedition Earring", ear2="Telos Earring", ring1="Niqmaddu Ring", right_ring="Chirich Ring +1", ---back=Ankou.STP, waist="Sailfi Belt +1", legs="Ig. Flanchard +3", feet="Flam. Gambieras +2", }) sets.engaged.Liberator.MidAcc.AM3 = set_combine(sets.engaged.Liberator.AM3, { neck="Abyssal Bead Necklace +2", ear1="Cessance Earring", ---legs=Odyssean.Legs.TP, }) sets.engaged.Liberator.MaxAcc.AM3 = set_combine(sets.engaged.Liberator.MidAcc.AM3, { ammo="Seething Bomblet +1", ear1="Cessance Earring", ear2="Telos Earring", body="Flamma Korazin +2", ring2="Regal Ring", waist="Ioskeha Belt", legs="Ignominy Flanchard +3", feet="Flamma Gambieras +2" }) sets.engaged.Haste.Liberator = set_combine(sets.engaged.Liberator, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Liberator.MidAcc = set_combine(sets.engaged.Liberator.MidAcc, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Liberator.MaxAcc = sets.engaged.Liberator.MaxAcc sets.engaged.Haste.Liberator.AM3 = set_combine(sets.engaged.Liberator.AM3, { waist="Windbuffet Belt +1", legs="Sulevia's Cuisses +2" }) sets.engaged.Haste.Liberator.MidAcc.AM3 = sets.engaged.Liberator.MidAcc.AM3 sets.engaged.Haste.Liberator.MaxAcc.AM3 = sets.engaged.Liberator.MaxAcc.AM3 -- Hybrid sets.engaged.Liberator.PDT = set_combine(sets.engaged.Liberator, {ammo="Coiste Bodhar", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Schere Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Chirich Ring +1", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } ) sets.engaged.Liberator.MidAcc.PDT = set_combine(sets.engaged.Liberator.PDT, { ear1="Cessance Earring", }) sets.engaged.Liberator.MaxAcc.PDT = set_combine(sets.engaged.Liberator.MaxAcc, sets.DefensiveHigh) -- Hybrid with AM3 up sets.engaged.Liberator.PDT.AM3 = set_combine(sets.engaged.Liberator.AM3, sets.Defensive) sets.engaged.Liberator.MidAcc.PDT.AM3 = set_combine(sets.engaged.Liberator.MidAcc.AM3, sets.Defensive_Mid) sets.engaged.Liberator.MaxAcc.PDT.AM3 = set_combine(sets.engaged.Liberator.MaxAcc.AM3, sets.DefensiveHigh) -- Hybrid with capped delay sets.engaged.Haste.Liberator.PDT = set_combine(sets.engaged.Liberator.PDT, sets.DefensiveHigh) sets.engaged.Haste.Liberator.MidAcc.PDT = set_combine(sets.engaged.Liberator.MidAcc.PDT, sets.DefensiveHigh) sets.engaged.Haste.Liberator.MaxAcc.PDT = set_combine(sets.engaged.Liberator.MaxAcc.PDT, sets.DefensiveHigh) -- Hybrid with capped delay + AM3 up sets.engaged.Haste.Liberator.PDT.AM3 = set_combine(sets.engaged.Liberator.PDT.AM3, sets.Defensive) sets.engaged.Haste.Liberator.MidAcc.PDT.AM3 = set_combine(sets.engaged.Liberator.MidAcc.PDT.AM3, sets.Defensive_Mid) sets.engaged.Haste.Liberator.MaxAcc.PDT.AM3 = set_combine(sets.engaged.Liberator.MaxAcc.PDT.AM3, sets.DefensiveHigh) -- Apocalypse sets.engaged.Apocalypse = set_combine(sets.engaged, { ear1="Cessance Earring", ear2="Brutal Earring", ---body=Valorous.Body.DA, hands="Sulevia's Gauntlets +2", ring2="Hetairoi Ring", ---back=Ankou.DA }) sets.engaged.Apocalypse.MidAcc = set_combine(sets.engaged.MidAcc, { ear1="Cessance Earring", ear2="Telos Earring", ring2="Regal Ring", hands="Sulevia's Gauntlets +2", ---back=Ankou.DA }) sets.engaged.Apocalypse.MaxAcc = set_combine(sets.engaged.MaxAcc, { ammo="Seething Bomblet +1", ear1="Cessance Earring", ear2="Telos Earring", body="Flamma Korazin +2", hands="Sulevia's Gauntlets +2", ---back=Ankou.DA }) -- sets.engaged.Apocalypse.AM = set_combine(sets.engaged.Apocalypse, {}) -- sets.engaged.Apocalypse.MidAcc.AM = set_combine(sets.engaged.Apocalypse.AM, {}) -- sets.engaged.Apocalypse.MaxAcc.AM = set_combine(sets.engaged.Apocalypse.MidAcc.AM, { -- ring2="Cacoethic Ring +1", -- waist="Ioskeha Belt" -- }) sets.engaged.Haste.Apocalypse = set_combine(sets.engaged.Apocalypse, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Apocalypse.MidAcc = sets.engaged.Apocalypse.MidAcc sets.engaged.Haste.Apocalypse.MaxAcc = sets.engaged.Apocalypse.MaxAcc -- Hybrid sets.engaged.Apocalypse.PDT = {ammo="Coiste Bodhar", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Schere Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Chirich Ring +1", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, } sets.engaged.Apocalypse.MidAcc.PDT = set_combine(sets.engaged.Apocalypse.MidAcc, sets.Defensive_Mid) sets.engaged.Apocalypse.MaxAcc.PDT = set_combine(sets.engaged.Apocalypse.MaxAcc, sets.Defensive_MaxAcc) -- Hybrid with relic AM -- sets.engaged.Apocalypse.PDT.AM = set_combine(sets.engaged.Apocalypse, sets.Defensive) -- sets.engaged.Apocalypse.MidAcc.PDT.AM = set_combine(sets.engaged.Apocalypse.MidAcc, sets.Defensive_Mid) -- sets.engaged.Apocalypse.MaxAcc.PDT.AM = set_combine(sets.engaged.Apocalypse.MaxAcc, sets.Defensive_MaxAcc) -- Hybrid with capped delay sets.engaged.Haste.Apocalypse.PDT = sets.engaged.PDT sets.engaged.Haste.Apocalypse.MidAcc.PDT = set_combine(sets.engaged.Apocalypse.MidAcc.PDT, sets.DefensiveHigh) sets.engaged.Haste.Apocalypse.MaxAcc.PDT = set_combine(sets.engaged.Apocalypse.MaxAcc.PDT, sets.DefensiveHigh) -- Hybrid with capped delay + AM3 up -- sets.engaged.Haste.Apocalypse.PDT.AM3 = set_combine(sets.engaged.Apocalypse.PDT.AM3, sets.DefensiveHigh) -- sets.engaged.Haste.Apocalypse.Mid.PDT.AM3 = set_combine(sets.engaged.Apocalypse.Mid.PDT.AM3, sets.DefensiveHigh) -- sets.engaged.Haste.Apocalypse.MaxAcc.PDT.AM3 = set_combine(sets.engaged.Apocalypse.MaxAcc.PDT.AM3, sets.DefensiveHigh) -- generic great sword sets.engaged.GreatSword = set_combine(sets.engaged, { hands="Flamma Manopolas +2" }) sets.engaged.GreatSword.Mid = set_combine(sets.engaged.Mid, {}) sets.engaged.GreatSword.Acc = set_combine(sets.engaged.Acc, { body="Flamma Korazin +2", legs="Ignominy Flanchard +3", }) sets.engaged.GreatSword.PDT = ({ammo="Coiste Bodhar", head="Sakpata's Helm", body="Sakpata's Plate", hands="Sakpata's Gauntlets", legs="Sakpata's Cuisses", feet="Sakpata's Leggings", neck={ name="Abyssal Beads +2", augments={'Path: A',}}, waist={ name="Sailfi Belt +1", augments={'Path: A',}}, left_ear="Brutal Earring", right_ear="Dedition Earring", left_ring="Niqmaddu Ring", right_ring="Chirich Ring +1", back={ name="Ankou's Mantle", augments={'DEX+20','Accuracy+20 Attack+20','DEX+10','"Dbl.Atk."+10','Phys. dmg. taken-10%',}}, }) sets.engaged.GreatSword.Mid.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.GreatSword.Acc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.GreatSword = set_combine(sets.engaged.Haste, {}) sets.engaged.Haste.GreatSword.Mid = set_combine(sets.engaged.Haste.Mid, {}) sets.engaged.Haste.GreatSword.Acc = set_combine(sets.engaged.Haste.Acc, {}) sets.engaged.Haste.GreatSword.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.GreatSword.Mid.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.GreatSword.Acc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) -- Ragnarok sets.engaged.Ragnarok = set_combine(sets.engaged.GreatSword, {}) sets.engaged.Ragnarok.MidAcc = set_combine(sets.engaged.GreatSword.MidAcc, {}) sets.engaged.Ragnarok.MaxAcc = set_combine(sets.engaged.GreatSword.MaxAcc, {}) sets.engaged.Ragnarok.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Ragnarok.MidAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Ragnarok.MaxAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) -- Caladbolg sets.engaged.Caladbolg = set_combine(sets.engaged.GreatSword, { }) sets.engaged.Caladbolg.MidAcc = set_combine(sets.engaged.GreatSword.MidAcc, { }) sets.engaged.Caladbolg.MaxAcc = set_combine(sets.engaged.GreatSword.MaxAcc, { }) sets.engaged.Caladbolg.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Caladbolg.MidAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Caladbolg.MaxAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.Caladbolg = set_combine(sets.engaged.Caladbolg, { waist="Windbuffet Belt +1" }) sets.engaged.Haste.Caladbolg.MidAcc = set_combine(sets.engaged.Caladbolg.MidAcc, { hands="Sulevia's Gauntlets +2", waist="Windbuffet Belt +1" }) sets.engaged.Haste.Caladbolg.MaxAcc = set_combine(sets.engaged.Caladbolg.MaxAcc, { hands="Sulevia's Gauntlets +2", }) sets.engaged.Haste.Caladbolg.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.Caladbolg.MidAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) sets.engaged.Haste.Caladbolg.MaxAcc.PDT = set_combine(sets.engaged.GreatSword.PDT, {}) end function job_pretarget(spell, action, spellMap, eventArgs) if spell.type:endswith('Magic') and buffactive.silence then eventArgs.cancel = true send_command('input /item "Echo Drops" <me>') end end function job_post_precast(spell, action, spellMap, eventArgs) if spell.type == 'WeaponSkill' then if world.time >= 17*60 or world.time < 7*60 and player.tp > 2600 then -- Dusk to Dawn time. equip({ear1="Lugra Earring +1", ear2="Thrud Earring"}) end if world.time >= 17*60 or world.time < 7*60 then equip({ear2="Thrud Earring"}) end if player.tp > 2700 then equip({ear1="Lugra Earring +1"}) end end end function job_pretarget(spell, action, spellMap, eventArgs) if spell.type:endswith('Magic') and buffactive.silence then eventArgs.cancel = true send_command('input /item "Echo Drops" <me>') end end -- 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) aw_custom_aftermath_timers_precast(spell) 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) end -- Run after the default midcast() is done. -- eventArgs is the same one used in job_midcast, in case information needs to be persisted. function job_post_midcast(spell, action, spellMap, eventArgs) if spell.english:startswith('Drain') then if player.status == 'Engaged' and state.CastingMode.current == 'Normal' and player.hpp < 70 then classes.CustomClass = 'OhShit' end end if (state.HybridMode.current == 'PDT' and state.PhysicalDefenseMode.current == 'Reraise') then equip(sets.Reraise) end end -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done. function job_aftercast(spell, action, spellMap, eventArgs) aw_custom_aftermath_timers_aftercast(spell) if state.Buff[spell.english] ~= nil then state.Buff[spell.english] = not spell.interrupted or buffactive[spell.english] end end function job_post_aftercast(spell, action, spellMap, eventArgs) if spell.type == 'WeaponSkill' then if state.Buff.Souleater and state.SouleaterMode.value then send_command('@wait 1.0;cancel souleater') --enable("head") end end end ------------------------------------------------------------------------------------------------------------------- -- Customization hooks for idle and melee sets, after they've been automatically constructed. ------------------------------------------------------------------------------------------------------------------- -- Called before the Include starts constructing melee/idle/resting sets. -- Can customize state or custom melee class values at this point. -- Set eventArgs.handled to true if we don't want any automatic gear equipping to be done. function job_handle_equipping_gear(status, eventArgs) end -- Modify the default idle set after it was constructed. function customize_idle_set(idleSet) if player.hpp < 50 then idleSet = set_combine(idleSet, sets.idle.Regen) elseif player.mpp < 50 then idleSet = set_combine(idleSet, sets.idle.Refresh) end if state.IdleMode.current == 'Sphere' then idleSet = set_combine(idleSet, sets.idle.Sphere) end if state.HybridMode.current == 'PDT' then idleSet = set_combine(idleSet, sets.defense.PDT) end return idleSet end -- Modify the default melee set after it was constructed. function customize_melee_set(meleeSet) if state.TreasureMode.value == 'Fulltime' then meleeSet = set_combine(meleeSet, sets.TreasureHunter) end if state.CapacityMode.value then meleeSet = set_combine(meleeSet, sets.CapacityMantle) end if state.Buff['Souleater'] then meleeSet = set_combine(meleeSet, sets.buff.Souleater) end --meleeSet = set_combine(meleeSet, select_earring()) return meleeSet end ------------------------------------------------------------------------------------------------------------------- -- General hooks for other events. ------------------------------------------------------------------------------------------------------------------- -- Called when the player's status changes. function job_status_change(newStatus, oldStatus, eventArgs) if newStatus == "Engaged" then --if state.Buff['Last Resort'] then -- send_command('@wait 1.0;cancel hasso') --end -- handle weapon sets if remaWeapons:contains(player.equipment.main) then state.CombatWeapon:set(player.equipment.main) end -- if gsList:contains(player.equipment.main) then -- state.CombatWeapon:set("GreatSword") -- elseif scytheList:contains(player.equipment.main) then -- state.CombatWeapon:set("Scythe") -- elseif remaWeapons:contains(player.equipment.main) then -- state.CombatWeapon:set(player.equipment.main) -- else -- use regular set, which caters to Liberator -- state.CombatWeapon:reset() -- end --elseif newStatus == 'Idle' then -- determine_idle_group() end end -- 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 handle_equipping_gear(player.status) end if S{'madrigal'}:contains(buff:lower()) then if buffactive.madrigal and state.OffenseMode.value == 'MaxAcc' then equip(sets.MadrigalBonus) end end if S{'haste', 'march', 'embrava', 'geo-haste', 'indi-haste', 'last resort'}:contains(buff:lower()) then if (buffactive['Last Resort']) then if (buffactive.embrava or buffactive.haste) and buffactive.march then state.CombatForm:set("Haste") if not midaction() then handle_equipping_gear(player.status) end end else if state.CombatForm.current ~= 'DW' and state.CombatForm.current ~= 'SW' then state.CombatForm:reset() end if not midaction() then handle_equipping_gear(player.status) end end end -- Drain II/III HP Boost. Set SE to stay on. -- if buff == "Max HP Boost" and state.SouleaterMode.value then -- if gain or buffactive['Max HP Boost'] then -- state.SouleaterMode:set(false) -- else -- state.SouleaterMode:set(true) -- end -- end -- Make sure SE stays on for BW if buff == 'Blood Weapon' and state.SouleaterMode.value then if gain or buffactive['Blood Weapon'] then state.SouleaterMode:set(false) else state.SouleaterMode:set(true) end end -- AM custom groups if buff:startswith('Aftermath') then if player.equipment.main == 'Liberator' then classes.CustomMeleeGroups:clear() if (buff == "Aftermath: Lv.3" and gain) or buffactive['Aftermath: Lv.3'] then classes.CustomMeleeGroups:append('AM3') add_to_chat(8, '-------------Mythic AM3 UP-------------') -- elseif (buff == "Aftermath: Lv.3" and not gain) then -- add_to_chat(8, '-------------Mythic AM3 DOWN-------------') end if not midaction() then handle_equipping_gear(player.status) end else classes.CustomMeleeGroups:clear() if buff == "Aftermath" and gain or buffactive.Aftermath then classes.CustomMeleeGroups:append('AM') end if not midaction() then handle_equipping_gear(player.status) end end end -- if buff == "Samurai Roll" then -- classes.CustomRangedGroups:clear() -- if (buff == "Samurai Roll" and gain) or buffactive['Samurai Roll'] then -- classes.CustomRangedGroups:append('SamRoll') -- end -- end --if buff == "Last Resort" then -- if gain then -- send_command('@wait 1.0;cancel hasso') -- else -- if not midaction() then -- send_command('@wait 1.0;input /ja "Hasso" <me>') -- end -- end --end end ------------------------------------------------------------------------------------------------------------------- -- User code that supplements self-commands. ------------------------------------------------------------------------------------------------------------------- -- Called by the 'update' self-command, for common needs. -- Set eventArgs.handled to true if we don't want automatic equipping of gear. function job_update(cmdParams, eventArgs) war_sj = player.sub_job == 'WAR' or false get_combat_form() get_combat_weapon() update_melee_groups() select_default_macro_book() end -- State buff checks that will equip buff gear and mark the event as handled. function check_buff(buff_name, eventArgs) if state.Buff[buff_name] then equip(sets.buff[buff_name] or {}) if state.TreasureMode.value == 'SATA' or state.TreasureMode.value == 'Fulltime' then equip(sets.TreasureHunter) end eventArgs.handled = true end end -- Check for various actions that we've specified in user code as being used with TH gear. -- This will only ever be called if TreasureMode is not 'None'. -- Category and Param are as specified in the action event packet. --function th_action_check(category, param) -- if category == 2 or -- any ranged attack -- --category == 4 or -- any magic action -- (category == 3 and param == 30) or -- Aeolian Edge -- (category == 6 and info.default_ja_ids:contains(param)) or -- Provoke, Animated Flourish -- (category == 14 and info.default_u_ja_ids:contains(param)) -- Quick/Box/Stutter Step, Desperate/Violent Flourish -- then -- return true -- end --end -- function get_custom_wsmode(spell, spellMap, default_wsmode) -- if state.OffenseMode.current == 'Mid' then -- if buffactive['Aftermath: Lv.3'] then -- return 'AM3Mid' -- end -- elseif state.OffenseMode.current == 'MaxAcc' then -- if buffactive['Aftermath: Lv.3'] then -- return 'AM3MaxAcc' -- end -- else -- if buffactive['Aftermath: Lv.3'] then -- return 'AM3' -- end -- end -- end ------------------------------------------------------------------------------------------------------------------- -- Utility functions specific to this job. ------------------------------------------------------------------------------------------------------------------- function get_combat_form() if S{'NIN', 'DNC'}:contains(player.sub_job) and swordList:contains(player.equipment.main) then state.CombatForm:set("DW") --elseif player.equipment.sub == '' or shields:contains(player.equipment.sub) then elseif swordList:contains(player.equipment.main) then state.CombatForm:set("SW") elseif buffactive['Last Resort'] then if (buffactive.embrava or buffactive.haste) and buffactive.march then add_to_chat(8, '-------------Delay Capped-------------') state.CombatForm:set("Haste") else state.CombatForm:reset() end else state.CombatForm:reset() end end function get_combat_weapon() state.CombatWeapon:reset() if remaWeapons:contains(player.equipment.main) then state.CombatWeapon:set(player.equipment.main) end -- if remaWeapons:contains(player.equipment.main) then -- state.CombatWeapon:set(player.equipment.main) -- elseif gsList:contains(player.equipment.main) then -- state.CombatWeapon:set("GreatSword") -- elseif scytheList:contains(player.equipment.main) then -- state.CombatWeapon:set("Scythe") -- end end function aw_custom_aftermath_timers_precast(spell) if spell.type == 'WeaponSkill' then info.aftermath = {} local mythic_ws = "Insurgency" info.aftermath.weaponskill = mythic_ws info.aftermath.duration = 0 info.aftermath.level = math.floor(player.tp / 1000) if info.aftermath.level == 0 then info.aftermath.level = 1 end if spell.english == mythic_ws and player.equipment.main == 'Liberator' then -- nothing can overwrite lvl 3 if buffactive['Aftermath: Lv.3'] then return end -- only lvl 3 can overwrite lvl 2 if info.aftermath.level ~= 3 and buffactive['Aftermath: Lv.2'] then return end if info.aftermath.level == 1 then info.aftermath.duration = 90 elseif info.aftermath.level == 2 then info.aftermath.duration = 120 else info.aftermath.duration = 180 end end end end -- Call from job_aftercast() to create the custom aftermath timer. function aw_custom_aftermath_timers_aftercast(spell) if not spell.interrupted and spell.type == 'WeaponSkill' and info.aftermath and info.aftermath.weaponskill == spell.english and info.aftermath.duration > 0 then local aftermath_name = 'Aftermath: Lv.'..tostring(info.aftermath.level) send_command('timers d "Aftermath: Lv.1"') send_command('timers d "Aftermath: Lv.2"') send_command('timers d "Aftermath: Lv.3"') send_command('timers c "'..aftermath_name..'" '..tostring(info.aftermath.duration)..' down abilities/aftermath'..tostring(info.aftermath.level)..'.png') info.aftermath = {} end end function display_current_job_state(eventArgs) local msg = '' msg = msg .. 'Offense: '..state.OffenseMode.current msg = msg .. ', Hybrid: '..state.HybridMode.current if state.DefenseMode.value ~= 'None' then local defMode = state[state.DefenseMode.value ..'DefenseMode'].current msg = msg .. ', Defense: '..state.DefenseMode.value..' '..defMode end if state.CombatForm.current ~= '' then msg = msg .. ', Form: ' .. state.CombatForm.current end if state.CombatWeapon.current ~= '' then msg = msg .. ', Weapon: ' .. state.CombatWeapon.current end if state.CapacityMode.value then msg = msg .. ', Capacity: ON, ' end if state.SouleaterMode.value then msg = msg .. ', SE Cancel, ' end -- if state.LastResortMode.value then -- msg = msg .. ', LR Defense, ' -- end if state.PCTargetMode.value ~= 'default' then msg = msg .. ', Target PC: '..state.PCTargetMode.value end if state.SelectNPCTargets.value then msg = msg .. ', Target NPCs' end add_to_chat(123, msg) eventArgs.handled = true end -- Set eventArgs.handled to true if we don't want the automatic display to be run. -- Handle notifications of general user state change. function job_state_change(stateField, newValue, oldValue) end -- Creating a custom spellMap, since Mote capitalized absorbs incorrectly function job_get_spell_map(spell, default_spell_map) if spell.skill == 'Dark Magic' and absorbs:contains(spell.english) then return 'Absorb' end -- if spell.type == 'Trust' then -- return 'Trust' -- end end function update_melee_groups() classes.CustomMeleeGroups:clear() -- mythic AM if player.equipment.main == 'Liberator' then if buffactive['Aftermath: Lv.3'] then classes.CustomMeleeGroups:append('AM3') end else -- relic AM if buffactive['Aftermath'] then classes.CustomMeleeGroups:append('AM') end -- if buffactive['Samurai Roll'] then -- classes.CustomRangedGroups:append('SamRoll') -- end end end function select_default_macro_book() if scytheList:contains(player.equipment.main) then set_macro_page(1, 6) elseif gsList:contains(player.equipment.main) then set_macro_page(1, 1) elseif player.sub_job == 'SAM' then set_macro_page(1, 1) else set_macro_page(1, 1) end end function update_combat_form() end What's DRK's best option (weapon/WS) in something like Divergence San d'Oria against the blue eyed statues?
Offline
Posts: 9078
Asura.Hitome said: » What's DRK's best option (weapon/WS) in something like Divergence San d'Oria against the blue eyed statues? Probably Anguta and Shadow of Death. Looking for some advice on Dynamis D. More specifically, the ACC requirements for each wave.
Tonight in Windy I noticed I was parsing decent damage-wise but my ACC was ***most of the run (around ~76%) using sublime sushi +1. For W1, I use my normal 6 hit GS (Calad) TP set which looks something like this: ACC (w/o food): 1096 ____ For my 5 hit scythe (Apoc) set it's something like this: ACC: 1157 ___ On wave 2, I generally keep the same TP gear unless fighting a THF mob with evasion bonuses in which case I use a bit more accuracy in this set: ACC: 1189 ____ On wave 3, it depends on the mobs and the buffs I have up. The volte NMs around the fetters seem to be quite evasive while the normal mobs aren't terrible. I usually swap over to either medium or high ACC sets for something like this: ACC: 1246 (at the expense of survivability w/o Sakpata) ___ Any idea what ACC I should aim for for each wave? Given the taru boss is a thief job, what's his accuracy requirement? Things I'm aware of: over the haste cap on some of these sets due to seething bomblet, lack of Utu grip kind of hurts, working towards Ioskeha Belt +1 to replace Kentarch, lack of AF+2 or +3 legs to synergize with the regal ring for bonus ACC. Outside of those areas, any ideas on where else to improve ACC? Thanks for any help you can provide! Offline
Posts: 71
Asura.Hitome said: » stuff how was your group structured? did you have any support in your party? were there any rdms or geos with dedicated torpor? Cerberus.Castien
Offline
Hello, currently looking to see what the best Greatsword would be thats not Caladbolg. Non-REMAs basically, I am going to work towards Caladbolg but its not high priority right now between both my characters. I use the Ambuscade GS currently but was thinking about the Odyssey one. I also know that with the augments Montante+1 is very good. Any advice? Thanks
dontclickme said: » how was your group structured? did you have any support in your party? were there any rdms or geos with dedicated torpor? That's some of the information I'd like to gather regarding other DRKs and how their raids structure buffs based on wave #. We had a GEOx1, RDMx1, BRDx2 (one of them not in DPS party), and CORx2 (one of them not in DPS party). AFAIK, the RDM was using distract 3 on wave 3 mobs. We had the GEO use torpor when we realized how evasive some of the volte NMs are (like the volte twirler). I'm pretty sure the corsairs were using hunter's and either chaos or sam roll as well. I do not remember what the bard was using but probably minuet/march. This was our first attempt past wave 2. If you have advice on which raid buffs you recommend for each support, I'm all ears and would appreciate it. Offline
Posts: 71
with a brd using x2 madrigal, rdm landing distracts and a geo using torpor, ~1200 without food seems to be my sweet spot.
as for buffs, i typically run: madrigal, dirge and x2 march | sam's roll + chaos/wizard's (if i'm a solo cor) until w2 boss. after that it's maintain 5 songs through w3 with x2 march, dirge, x2 madrigal. Cerberus.Castien said: » Hello, currently looking to see what the best Greatsword would be thats not Caladbolg. Non-REMAs basically, I am going to work towards Caladbolg but its not high priority right now between both my characters. I use the Ambuscade GS currently but was thinking about the Odyssey one. I also know that with the augments Montante+1 is very good. Any advice? Thanks I would start with either a montante +1 or a raetic algol +1. If you play Warrior as well as Dark Knight go with Montante, if you play Dark Knight exclusively get Raetic. Either one is great while you work on a Caladbolg. I'm a big fan of Raetic for two reasons: 1) Its tons of fun to use and pairs well with Scythe and Entropy 2) You can sell it when you are done with it Agwu's claymore isn't bad either, and may be your best option for a "Just buy this now" sort of thing if either the AH doesnt have Raetic or you don't have 550 JP and need something immediately. Don't make the Ambuscade Great Sword. Either use the pulse weapon to make Lycurgos or keep it around to use on a different job. Finally, Ragnarok, the other REMA. Don't make a Rag until you already have an R15 Caladbolg and are certain you will need a 269 skill great sword with an extra 75 accuracy. I love my Rag and I get plenty of use out of it, but it is a high accuracy piece only. Asura.Hitome said: » Looking for some advice on Dynamis D. More specifically, the ACC requirements for each wave. Tonight in Windy I noticed I was parsing decent damage-wise but my ACC was ***most of the run (around ~76%) using sublime sushi +1. ... Any idea what ACC I should aim for for each wave? Given the taru boss is a thief job, what's his accuracy requirement? Things I'm aware of: over the haste cap on some of these sets due to seething bomblet, lack of Utu grip kind of hurts, working towards Ioskeha Belt +1 to replace Kentarch, lack of AF+2 or +3 legs to synergize with the regal ring for bonus ACC. Outside of those areas, any ideas on where else to improve ACC? Thanks for any help you can provide! I consider 1200 accuracy in gear, without food or buffs as my baseline for low accuracy. That is using a 269 skill weapon with no accuracy bonus on it, ie Caladbolg. With that as my baseline, I cap accuracy in Dyna wave1 with Honor March and attack food. Total accuracy requirement by /checkparam should be 1300 or less for wave1. Wave2 requirements go up and I'm generally either using acc or hybrid food and my low accuracy gear, or I'm using mid-higher acc gear and attack food. I think I'm generally around 1420 accuracy by /checkparam for wave2. Wave 3 Volte accuracy requirements go up a lot. We generally do a big SV song rotation before we crush the wave2 boss which lets me ride low accuracy gear for the first ~8 minutes of wave 3, but after that the high accuracy gear goes on. I really fiddle with gear sets during wave3, but in general my accuracy target is 1700-1720 for wave3 volte mobs. Depending on buffs I'm often using Ragnarok to cap accuracy, Apocalypse is great too. Below 1700 accuracy I certainly notice DDs suffering. As for the wave3 boss, I'm not sure what it's evasion is, but it's low enough that I'm free to use low accuracy set and weapon. /edit For reference, with a 269 skill weapon with 0 accuracy on it, I consider: 1200 accuracy for low accuracy 1250 for mid accuracy 1300 for high accuracy Offline
Posts: 9078
There is also Zantetsuken for DRK.
Leviathan.Celebrindal
Online
3 biggest suggestions for successful Dyna-D DD'ing I could think of:
1. Bring a RDM. All the tools they have are a massive advantage in DPS, safety, and speed. And let them be free to be an enhancing/enfeebling/melee RDM if they can handle it, don't pink 'em up by making them main heal a party and expect much more than Dia. 2. The highest evasion mobs in all of Dyna-D are the wave 3 Volte NMs for THF, DNC, and NIN. Embrace some bubble changes there to compensate. Speaking on bubbles, each party should have their own GEO. It just simplifies matters- its not necessary- but why make things harder on your group if you have the numbers. Not saying everyone is running 18 man Dyna-D....but if someone is asking about acc difficulties in there I'm not jumping to they low-man wave3 just yet. 3. Don't be afraid to reduce your attack buffs in lieu of accuracy as your group advances in the waves. There's no shame in riding Honor March and a Madrigal or two if that's what your group needs to hit 90%+ accuracy across the board. Yes, sets need to be quality, but there are just some points in that last wave where even the best laid plans need a boost. The biggest problems I've seen with Volte mobs in wave3 happen when they just live too long due to bad accuracy, and multiple TP moves start to happen. Enjoy it! Its still in my book the best test of gear sets for DDs in the game- nothing I do in Odyssey requires near the level of accuracy, making finding that balance of acc/dps/DT so much easier to find than most wave3 experiences I've had. Offline
Posts: 494
Make sure your rdm pays attention to wild card and benediction in wave 3 since they can remove all debuffs. Try to kill mobs in an order that makes sense in regards to this. Don't try to kill the cor or whm first after a bunch of debuffs have been landed, and make sure they keep the whm silenced so it doesn't erase or na the other mobs. Distract is absolutely huge and if you don't bring a quality rdm you're gonna have a bad time.
Offline
Posts: 30
Any macro palette layouts posted anywhere [with /sam sub]. Looking to get a sense of what folks use most often on the go - thanks.
|
||
All FFXI content and images © 2002-2024 SQUARE ENIX CO., LTD. FINAL
FANTASY is a registered trademark of Square Enix Co., Ltd.
|