|
The Pirates' Lair: A Guide to Corsair
サーバ: Asura
Game: FFXI
Posts: 1326
By Asura.Azagarth 2016-12-27 05:39:52
So after the 5th amikii bullet this week, I need a new lua lol... I have used one i found in this guid, though i cant remember where. Does anyone have a lua that will hopefully prevent the use of my amikii?
By hobo 2016-12-27 08:47:25
You can hard define the bullet. I took the one from AlanWarren's github where there is
gear.RAbullet = "Decimating Bullet"
gear.QDbullet = "Animikii Bullet"
in the setup and then the sets all have ammo=gear.RAbullet or ammo=gear.QDbullet
there is setup for the MA and WS bullet in there as well, its working quite well for me, doesn't let you use ammo that is not defined.
サーバ: Asura
Game: FFXI
Posts: 1326
By Asura.Azagarth 2016-12-27 17:41:23
I have it setup like that, and its used 4 this week, im on my last wkr-voucher.... so cant f it up anymore.
Code -------------------------------------------------------------------------------------------------------------------
-- (Original: Motenten / Modified: Arislan)
-------------------------------------------------------------------------------------------------------------------
--[[ Custom Features:
QuickDraw Selector Cycle through available primary and secondary shot types,
and trigger with a single macro
Haste Detection Detects current magic haste level and equips corresponding engaged set to
optimize delay reduction (automatic)
Haste Mode Toggles between Haste II and Haste I recieved, used by Haste Detection [WinKey-H]
Capacity Pts. Mode Capacity Points Mode Toggle [WinKey-C]
Reive Detection Automatically equips Reive bonus gear
Auto. Lockstyle Automatically locks specified equipset on file load
--]]
-------------------------------------------------------------------------------------------------------------------
--[[
Custom commands:
gs c qd
Uses the currently configured shot on the target, with either <t> or <stnpc> depending on setting.
gs c qd t
Uses the currently configured shot on the target, but forces use of <t>.
Configuration commands:
gs c cycle mainqd
Cycles through the available steps to use as the primary shot when using one of the above commands.
gs c cycle altqd
Cycles through the available steps to use for alternating with the configured main shot.
gs c toggle usealtqd
Toggles whether or not to use an alternate shot.
gs c toggle selectqdtarget
Toggles whether or not to use <stnpc> (as opposed to <t>) when using a shot.
gs c toggle LuzafRing -- Toggles use of Luzaf Ring on and off
Offense mode is melee or ranged. Used ranged offense mode if you are engaged
for ranged weaponskills, but not actually meleeing.
Weaponskill mode, if set to 'Normal', is handled separately for melee and ranged weaponskills.
--]]
-------------------------------------------------------------------------------------------------------------------
-- 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
include('Include/AugmentedGear.lua')
-- Setup vars that are user-independent. state.Buff vars initialized here will automatically be tracked.
function job_setup()
-- QuickDraw Selector
state.Mainqd = M{['description']='Primary Shot', 'Earth Shot', 'Water Shot', 'Wind Shot', 'Fire Shot', 'Ice Shot', 'Thunder Shot'}
state.Altqd = M{['description']='Secondary Shot', 'Light Shot', 'Dark Shot'}
state.UseAltqd = M(false, 'Use Secondary Shot')
state.SelectqdTarget = M(false, 'Select Quick Draw Target')
state.IgnoreTargetting = M(false, 'Ignore Targetting')
state.HasteMode = M{['description']='Haste Mode', 'Haste I', 'Haste II'}
state.Currentqd = M{['description']='Current Quick Draw', 'Main', 'Alt'}
-- Whether to use Luzaf's Ring
state.LuzafRing = M(false, "Luzaf's Ring")
-- Whether a warning has been given for low ammo
state.warned = M(false)
define_roll_values()
determine_haste_group()
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('STP', 'Normal', 'LowAcc', 'MidAcc', 'HighAcc')
state.RangedMode:options('Normal', 'Acc')
state.WeaponskillMode:options('Normal', 'Acc')
state.CastingMode:options('Normal', 'Resistant')
state.IdleMode:options('Normal', 'DT')
gear.RAbullet = "Adlivun Bullet"
gear.WSbullet = "Eminent Bullet"
gear.MAbullet = "Bronze Bullet"
gear.QDbullet = "Animikii Bullet"
options.ammo_warning_limit = 5
-- Additional local binds
send_command('bind ^` input /ja "Double-up" <me>')
send_command('bind !` input /ja "Bolter\'s Roll" <me>')
send_command ('bind @` gs c toggle LuzafRing')
send_command('bind ^- gs c cycleback mainqd')
send_command('bind ^= gs c cycle mainqd')
send_command('bind !- gs c cycle altqd')
send_command('bind != gs c cycleback altqd')
send_command('bind ^[ gs c toggle selectqdtarget')
send_command('bind ^] gs c toggle usealtqd')
if player.sub_job == 'DNC' then
send_command('bind ^, input /ja "Spectral Jig" <me>')
send_command('unbind ^.')
elseif player.sub_job == "RDM" or player.sub_job == "WHM" then
send_command('bind ^, input /ma "Sneak" <stpc>')
send_command('bind ^. input /ma "Invisible" <stpc>')
else
send_command('bind ^, input /item "Silent Oil" <me>')
send_command('bind ^. input /item "Prism Powder" <me>')
end
send_command('bind @c gs c toggle CP')
send_command('bind @h gs c cycle HasteMode')
select_default_macro_book()
set_lockstyle()
end
-- Called when this job file is unloaded (eg: job change)
function user_unload()
send_command('unbind ^`')
send_command('unbind !`')
send_command('unbind @`')
send_command('unbind ^-')
send_command('unbind ^=')
send_command('unbind !-')
send_command('unbind !=')
send_command('unbind ^[')
send_command('unbind ^]')
send_command('unbind ^,')
send_command('unbind @c')
send_command('unbind @h')
end
-- Define sets and vars used by this job file.
function init_gear_sets()
--------------------------------------
-- Start defining the sets
--------------------------------------
Camulus={}
Camulus.WSDSTR= { name="Camulus's Mantle", augments={'STR+20','Accuracy+20 Attack+20','Weapon skill damage +10%',}}
Camulus.RACC= { name="Camulus's Mantle", augments={'AGI+20','Rng.Acc.+20 Rng.Atk.+20','"Store TP"+10',}}
-- Precast Sets
sets.precast.JA['Triple Shot'] = {body="Chasseur's Frac +1"}
sets.precast.JA['Snake Eye'] = {legs="Lanun Culottes"}
sets.precast.JA['Wild Card'] = {feet="Lanun Bottes"}
sets.precast.JA['Random Deal'] = {body="Lanun Frac"}
sets.precast.CorsairRoll = {
-- range="Compensator",
head="Lanun Tricorne",
body="Meg. Cuirie +1",
hands="Chasseur's Gants +1",
legs="Desultor Tassets",
feet=HercFeet.DT,
neck="Loricate Torque +1",
ear1="Genmei Earring",
ear2="Odnowa Earring +1",
ring1="Defending Ring",
ring2="Barataria Ring",
back="Camulus's Mantle",
waist="Flume Belt",
}
sets.precast.CorsairRoll["Caster's Roll"] = set_combine(sets.precast.CorsairRoll, {legs="Chas. Culottes +1"})
sets.precast.CorsairRoll["Courser's Roll"] = set_combine(sets.precast.CorsairRoll, {feet="Chass. Bottes +1"})
sets.precast.CorsairRoll["Blitzer's Roll"] = set_combine(sets.precast.CorsairRoll, {head="Chass. Tricorne +1"})
sets.precast.CorsairRoll["Tactician's Roll"] = set_combine(sets.precast.CorsairRoll, {body="Chasseur's Frac +1"})
sets.precast.CorsairRoll["Allies' Roll"] = set_combine(sets.precast.CorsairRoll, {hands="Chasseur's Gants +1"})
sets.precast.LuzafRing = {ring1="Luzaf's Ring"}
sets.precast.FoldDoubleBust = {hands="Lanun Gants"}
sets.precast.CorsairShot = {}
sets.precast.Waltz = {
} -- CHR and VIT
sets.precast.Waltz['Healing Waltz'] = {}
sets.precast.FC = {
head="Carmine Mask", --12
body="Taeon Tabard", --9
hands="Leyline Gloves", --7
legs=HercLegs.FC, --5
feet="Carmine Greaves", --7
neck="Voltsurge Torque", --5
ear1="Loquacious Earring", --2
ear2="Etiolation Earring", --1
ring1="Prolix Ring", --2
ring2="Rahab Ring", --2
waist="Tempus fugit",
}
sets.precast.FC.Utsusemi = set_combine(sets.precast.FC, {})
sets.precast.RA = {
ammo=gear.RAbullet,
head="Aurore Beret +1", --5
body="Pursuer's Doublet", --6
hands="Carmine Finger Gauntlets", --7
legs="Adhemar Kecks", --9
feet="Meg. Jam. +1", --8
back="Navarch's Mantle", --6
waist="Impulse Belt", --3
} -- 10% Gifts
-- Weaponskill sets
-- Default set for any weaponskill that isn't any more specifically defined
sets.precast.WS = {
ammo=gear.WSbullet,
head="Meghanada Visor +1",
body="Meg. Cuirie +1",
hands="Meg. Gloves +1",
legs="Meg. Chausses +1",
feet="Meg. Jam. +1",
neck="Fotia Gorget",
ear1="Moonshade Earring",
ear2="Ishvara Earring",
ring1="Apate Ring",
ring2="Garuda Ring",
back=Camulus.WSDSTR,
waist="Fotia Belt",
}
sets.precast.WS.Acc = set_combine(sets.precast.WS, {
hands="Meg. Gloves +1",
})
-- Specific weaponskill sets. Uses the base set if an appropriate WSMod version isn't found.
sets.precast.WS["Last Stand"] = set_combine(sets.precast.WS, {
waist="Flame Belt",
back=Camulus.RACC,
})
sets.precast.WS['Last Stand'].Acc = set_combine(sets.precast.WS['Last Stand'], {
ammo=gear.WSbullet,
ear2="Telos Earring",
ring1="Cacoethic Ring",
ring2="Hajduk Ring",
})
sets.precast.WS['Wildfire'] = {
ammo=gear.MAbullet,
head=HercHead.MAB,
body="Samnuha Coat",
hands="Carmine Finger Gauntlets",
legs=HercLegs.MAB,
feet=HercFeet.MAB,
neck="Sanctity Necklace",
ear1="Hecate's Earring",
ear2="Friomisi Earring",
ring1="Arvina Ringlet +1",
ring2="Garuda Ring",
back="Gunslinger's Cape",
waist="Eschan Stone",
}
sets.precast.WS['Leaden Salute'] = {
ammo=gear.MAbullet,
head="Pixie Hairpin +1",
body="Samnuha Coat",
hands="Carmine Finger Gauntlets",
legs=HercLegs.MAB,
feet=HercFeet.MAB,
neck="Sanctity Necklace",
ear1="Moonshade Earring",
ear2="Friomisi Earring",
ring1="Arvina Ringlet +1",
ring2="Garuda Ring",
back="Gunslinger's Cape",
waist="Eschan Stone",
}
sets.precast.WS['Leaden Salute'].FullTP = {ear1="Hecate's Earring"}
sets.precast.WS['Evisceration'] = {
head="Adhemar Bonnet",
body="Meg. Cuirie +1",
hands="Meg. Gloves +1",
legs="Samnuha Tights",
feet=gear.Herc_TA_feet,
neck="Fotia Gorget",
ear1="Moonshade Earring",
ear2="Brutal Earring",
ring1="Begrudging Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR,
waist="Fotia Belt",
}
sets.precast.WS['Savage Blade'] = set_combine(sets.precast.WS['Evisceration'], {
head="Lilitu Headpiece",
body=HercBody.WSDSTR,
hands="Meg. Gloves +1",
legs=HercLegs.WSD,
feet=HercFeet.WSDSTR,
neck="Caro Necklace",
ring1="Ifrit Ring +1",
ring2="Ifrit Ring +1",
back=Camulus.WSDSTR,
waist="Metalsinger Belt",
})
sets.precast.WS['Savage Blade'].Acc = set_combine(sets.precast.WS['Savage Blade'], {
body=HercBody.WSDSTR,
feet=HercFeet.WSDSTR,
ear2="Telos Earring",
waist="Grunfeld Rope",
})
sets.precast.WS['Requiescat'] = set_combine(sets.precast.WS['Savage Blade'], {
head="Meghanada Visor +1",
body=HercBody.WSDSTR,
feet="Carmine Greaves",
neck="Fotia Gorget",
ring1="Stikini RIng",
ring2="Epona's Ring",
back=Camulus.WSDSTR,
waist="Fotia Belt",
}) --MND
sets.precast.WS['Requiescat'].Acc = set_combine(sets.precast.WS['Requiescat'], {
ear2="Telos Earring",
ring2="Ramuh Ring +1",
})
-- Midcast Sets
sets.midcast.FastRecast = {
ear1="Loquacious Earring",
ear2="Etiolation Earring",
}
sets.midcast.Cure = {
neck="Incanter's Torque",
ear1="Roundel Earring",
ear2="Mendi. Earring",
ring1="Lebeche Ring",
ring2="Haoma's Ring",
waist="Bishop's Sash",
}
sets.midcast.Utsusemi = {
waist="Tempus fugit",
}
sets.midcast['Dark Magic'] = {
ammo=gear.QDbullet,
head=HercHead.MAB,
body="Pursuer's Doublet",
hands="Adhemar Wristbands",
legs="Chas. Culottes +1",
feet="Carmine Greaves",
neck="Ainia Collar",
ear1="Enervating Earring",
ear2="Telos Earring",
ring1="Petrov Ring",
ring2="Chirich Ring",
back="Gunslinger's Cape",
waist="Oneiros Rope",
}
sets.midcast.CorsairShot = {
ammo=gear.QDbullet,
head=HercHead.MAB,
body="Samnuha Coat",
hands="Carmine Finger Gauntlets",
legs=HercLegs.MAB,
feet=HercFeet.MAB,
neck="Sanctity Necklace",
ear1="Hecate's Earring",
ear2="Friomisi Earring",
ring1="Arvina Ringlet +1",
ring2="Shiva Ring +1",
back="Gunslinger's Cape",
waist="Eschan Stone",
}
sets.midcast.CorsairShot['Light Shot'] = set_combine(sets.midcast.CorsairShot, {
head="Carmine Mask",
hands="Leyline Gloves",
feet=HercFeet.MAB,
neck="Sanctity Necklace",
ear1="Hermetic Earring",
ear2="Enervating Earring",
ring2="Stikini Ring",
})
sets.midcast.CorsairShot['Dark Shot'] = sets.midcast.CorsairShot['Light Shot']
-- Ranged gear
sets.midcast.RA = {
ammo=gear.RAbullet,
head="Pursuer's Beret",
body="Mummu Jacket +1",
hands="Adhemar wristbands",
legs="Adhemar Kecks",
feet="Carmine Greaves",
neck="Ainia Collar",
ear1="Enervating Earring",
ear2="Telos Earring",
ring1="Rajas Ring",
ring2="Petrov Ring",
back=Camulus.RACC,
waist="Kwahu Kachina Belt",
}
sets.midcast.RA.Acc = set_combine(sets.midcast.RA, {
ammo=gear.RAbullet,
head="Meghanada Visor +1",
body="Meg. Cuirie +1",
hands="Meg. Gloves +1",
legs="Meg. Chausses +1",
feet="Meg. Jam. +1",
neck="Sanctity Necklace",
ear1="Enervating Earring",
ear2="Telos Earring",
ring1="Hajduk Ring",
ring2="Cacoethic Ring",
back=Camulus.RACC,
waist="Kwahu Kachina Belt",
})
-- Sets to return to when not performing an action.
-- Resting sets
sets.resting = {}
-- Idle sets
sets.idle = {
ammo=gear.MAbullet,
head="Dampening Tam",
body="Meg. Cuirie +1",
hands=HercHands.PDT,
legs="Meg. Chausses +1",
feet=HercFeet.DT,
neck="Sanctity Necklace",
ear1="Genmei Earring",
ear2="Infused Earring",
ring1="Defending Ring",
ring2="Shneddick Ring",
back="Solemnity Cape",
waist="Flume Belt",
}
sets.idle.DT = set_combine (sets.idle, {
head="Dampening Tam", --3/3
body="Meg. Cuirie +1", --7/0
hands=HercHands.PDT, --5/3
feet=HercFeet.DT, --4/0
neck="Loricate Torque +1", --6/6
ear2="Odnowa Earring +1", --0/2
ear1="Odnowa Earring", --0/1
ring2="Warden's Ring", --7/(-1)
ring1="Defending Ring", --10/10
back="Solemnity Cape", --4/4
waist="Flume Belt", --4/0
})
sets.idle.Town = set_combine(sets.idle, {
})
-- Defense sets
sets.defense.PDT = sets.idle.DT
sets.defense.MDT = sets.idle.DT
sets.Kiting = {legs="Carmine Cuisses"}
-- Engaged sets
-- * DNC Subjob DW Trait: +15%
-- * NIN Subjob DW Trait: +25%
-- No Magic Haste (74% DW to cap) 49% needed /nin 59% /dnc
sets.engaged = {
head="Dampening Tam",
body="Adhemar Jacket", --5
hands="Floral Gauntlets", --5
legs=HercLegs.DW, --4
feet="Taeon Boots", --9
neck="Lissome Necklace",
ear1="Eabani Earring", --4
ear2="Suppanomimi", --5
ring1="Petrov Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR, --10
waist="Kentarch Belt +1",
} -- 42%
sets.engaged.LowAcc = set_combine(sets.engaged, {
ring1="Chirich Ring",
waist="Kentarch Belt +1",
})
sets.engaged.MidAcc = set_combine(sets.engaged.LowAcc, {
ear1="Cessance Earring",
ring2="Ramuh Ring +1",
})
sets.engaged.HighAcc = set_combine(sets.engaged.MidAcc, {
head=HercHead.ACC,
ear2="Telos Earring",
ring1="Ramuh Ring +1",
})
sets.engaged.STP = set_combine(sets.engaged, {
neck="Ainia Collar",
ear2="Telos Earring",
ring1="Petrov Ring",
waist="Kentarch Belt +1",
})
-- 15% Magic Haste (67% DW to cap) 42% as /nin 52% as /dnc
sets.engaged.LowHaste = {
head="Dampening Tam",
body="Adhemar Jacket", --5
hands="Floral Gauntlets", --5
legs=HercLegs.DW, --4
feet="Taeon Boots", --9
neck="Lissome Necklace",
ear1="Eabani Earring", --4
ear2="Suppanomimi", --5
ring1="Petrov Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR, --10
waist="Kentarch Belt +1",
} -- 42%
sets.engaged.LowHaste.LowAcc = set_combine(sets.engaged.LowHaste, {
ring1="Chirich Ring",
waist="Kentarch Belt +1",
})
sets.engaged.LowHaste.MidAcc = set_combine(sets.engaged.LowHaste.LowAcc, {
ear2="Telos Earring",
ring2="Ramuh Ring +1",
})
sets.engaged.LowHaste.HighAcc = set_combine(sets.engaged.LowHaste.MidAcc, {
head=HercHead.ACC,
feet=HercFeet.TA,
ear1="Cessance Earring",
ring1="Ramuh Ring +1",
})
sets.engaged.LowHaste.STP = set_combine(sets.engaged.LowHaste, {
neck="Ainia Collar",
ear2="Telos Earring",
ring1="Petrov Ring",
waist="Kentarch Belt +1",
})
-- 30% Magic Haste (56% DW to cap) 31% as /nin and 41% as /dnc
sets.engaged.MidHaste = {
head="Dampening Tam",
body="Adhemar Jacket", --5
hands="Floral Gauntlets", --5
legs=HercLegs.DW, --4
feet="Taeon Boots", --9
neck="Lissome Necklace",
ear1="Eabani Earring", --4
ear2="Suppanomimi", --5
ring1="Petrov Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR,
waist="Kentarch Belt +1",
} -- 32%
sets.engaged.MidHaste.LowAcc = set_combine(sets.engaged.MidHaste, {
ring1="Chirich Ring",
waist="Kentarch Belt +1",
})
sets.engaged.MidHaste.MidAcc = set_combine(sets.engaged.MidHaste.LowAcc, {
legs="Adhemar Kecks",
ear2="Telos Earring",
ring2="Ramuh Ring +1",
})
sets.engaged.MidHaste.HighAcc = set_combine(sets.engaged.MidHaste.MidAcc, {
head=HercHead.ACC,
legs=HercLegs.DW,
feet="Taeon Boots",
ear1="Cessance Earring",
ring1="Ramuh Ring +1",
})
sets.engaged.MidHaste.STP = set_combine(sets.engaged.MidHaste, {
feet="Carmine Greaves",
neck="Ainia Collar",
ear2="Telos Earring",
ring1="Petrov Ring",
waist="Kentarch Belt +1",
})
-- 35% Magic Haste (51% DW to cap) 26% as /nin and 36% as /dnc
sets.engaged.HighHaste = {
head="Dampening Tam",
body="Adhemar Jacket", --5
hands="Adhemar Wristbands",
legs="Samnuha Tights",
feet="Taeon Boots", --9
neck="Lissome Necklace",
ear1="Eabani Earring", --4
ear2="Suppanomimi", --5
ring1="Petrov Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR,
waist="Kentarch Belt +1",
} -- 23%
sets.engaged.HighHaste.LowAcc = set_combine(sets.engaged.HighHaste, {
ring1="Chirich Ring",
waist="Kentarch Belt +1",
})
sets.engaged.HighHaste.MidAcc = set_combine(sets.engaged.HighHaste.LowAcc, {
legs="Adhemar Kecks",
ear2="Telos Earring",
ring2="Ramuh Ring +1",
})
sets.engaged.HighHaste.HighAcc = set_combine(sets.engaged.HighHaste.MidAcc, {
head=HercHead.ACC,
legs=HercLegs.DW,
feet="Taeon Boots",
ear1="Cessance Earring",
ring1="Ramuh Ring +1",
})
sets.engaged.HighHaste.STP = set_combine(sets.engaged.HighHaste, {
feet="Carmine Greaves",
neck="Ainia Collar",
ear2="Telos Earring",
ring1="Petrov Ring",
waist="Kentarch Belt +1",
})
-- 47% Magic Haste (36% DW to cap) 11% as /nin and 21% as /dnc
sets.engaged.MaxHaste = {
head="Dampening Tam",
body="Adhemar Jacket", --5
hands="Adhemar Wristbands",
legs="Samnuha Tights",
feet=HercFeet.TA,
neck="Lissome Necklace",
ear1="Cessance Earring",
ear2="Suppanomimi", --5
ring1="Petrov Ring",
ring2="Epona's Ring",
back=Camulus.WSDSTR,
waist="Kentarch Belt +1",
} -- 10%
sets.engaged.MaxHaste.LowAcc = set_combine(sets.engaged.HighHaste, {
hands=HercHands.TA,
ring1="Chirich Ring",
waist="Kentarch Belt +1",
})
sets.engaged.MaxHaste.MidAcc = set_combine(sets.engaged.MaxHaste.LowAcc, {
legs="Adhemar Kecks",
ear2="Telos Earring",
ring2="Ramuh Ring +1",
})
sets.engaged.MaxHaste.HighAcc = set_combine(sets.engaged.MaxHaste.MidAcc, {
head=HercHead.ACC,
legs=HercLegs.DW,
feet="Taeon Boots",
ear1="Cessance Earring",
ring1="Ramuh Ring +1",
})
sets.engaged.MaxHaste.STP = set_combine(sets.engaged.MaxHaste, {
feet="Carmine Greaves",
neck="Ainia Collar",
ear2="Telos Earring",
ring1="Petrov Ring",
waist="Kentarch Belt +1",
})
sets.Obi = {waist="Hachirin-no-Obi"}
sets.Reive = {neck="Adoulin's Refuge +1"}
end
-------------------------------------------------------------------------------------------------------------------
-- Job-specific hooks for standard casting events.
-------------------------------------------------------------------------------------------------------------------
-- 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)
-- Check that proper ammo is available if we're using ranged attacks or similar.
if spell.action_type == 'Ranged Attack' or spell.type == 'WeaponSkill' or spell.type == 'CorsairShot' then
do_bullet_checks(spell, spellMap, eventArgs)
end
-- gear sets
if (spell.type == 'CorsairRoll' or spell.english == "Double-Up") and state.LuzafRing.value then
equip(sets.precast.LuzafRing)
elseif spell.type == 'CorsairShot' and state.CastingMode.value == 'Resistant' then
classes.CustomClass = 'Acc'
elseif spell.english == 'Fold' and buffactive['Bust'] == 2 then
if sets.precast.FoldDoubleBust then
equip(sets.precast.FoldDoubleBust)
eventArgs.handled = true
end
end
end
function job_post_precast(spell, action, spellMap, eventArgs)
-- Equip obi if weather/day matches for WS/Quick Draw.
if spell.type == 'WeaponSkill' or spell.type == 'CorsairShot' then
if spell.english == 'Leaden Salute' then
if world.weather_element == 'Dark' or world.day_element == 'Dark' then
equip(sets.Obi)
end
if player.tp > 2900 then
equip(sets.precast.WS['Leaden Salute'].FullTP)
end
elseif spell.english == 'Wildfire' and (world.weather_element == 'Fire' or world.day_element == 'Fire') then
equip(sets.Obi)
elseif spell.type == 'CorsairShot' and (spell.element == world.weather_element or spell.element == world.day_element) then
equip(sets.Obi)
end
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)
if spell.type == 'CorsairRoll' and not spell.interrupted then
display_roll_info(spell)
end
end
function job_buff_change(buff,gain)
-- If we gain or lose any haste buffs, adjust which gear set we target.
if S{'haste', 'march', 'mighty guard', 'embrava', 'haste samba', 'geo-haste', 'indi-haste'}:contains(buff:lower()) then
determine_haste_group()
if not midaction() then
handle_equipping_gear(player.status)
end
end
if buffactive['Reive Mark'] then
equip(sets.Reive)
disable('neck')
else
enable('neck')
end
end
-------------------------------------------------------------------------------------------------------------------
-- User code that supplements standard library decisions.
-------------------------------------------------------------------------------------------------------------------
-- Return a customized weaponskill mode to use for weaponskill sets.
-- Don't return anything if you're not overriding the default value.
function job_update(cmdParams, eventArgs)
determine_haste_group()
end
-- Set eventArgs.handled to true if we don't want the automatic display to be run.
function job_update(cmdParams, eventArgs)
determine_haste_group()
end
function get_custom_wsmode(spell, spellMap, default_wsmode)
if buffactive['Transcendancy'] then
return 'Brew'
end
end
-- 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)
if newStatus == 'Engaged' and player.equipment.main == 'Chatoyant Staff' then
state.OffenseMode:set('Ranged')
end
end
-- Handle auto-targetting based on local setup.
function job_auto_change_target(spell, action, spellMap, eventArgs)
if spell.type == 'CorsairShot' then
if state.IgnoreTargetting.value == true then
state.IgnoreTargetting:reset()
eventArgs.handled = true
end
eventArgs.SelectNPCTargets = state.SelectqdTarget.value
end
end
-- Set eventArgs.handled to true if we don't want the automatic display to be run.
function display_current_job_state(eventArgs)
local msg = ''
msg = msg .. '[ Offense/Ranged: '..state.OffenseMode.current..'/'..state.RangedMode.current .. ' ]'
msg = msg .. '[ WS: '..state.WeaponskillMode.current .. ' ]'
if state.DefenseMode.value ~= 'None' then
msg = msg .. '[ Defense: ' .. state.DefenseMode.value .. state[state.DefenseMode.value .. 'DefenseMode'].value .. ' ]'
end
if state.Kiting.value then
msg = msg .. '[ Kiting Mode: ON ]'
end
msg = msg .. '[ ' .. state.HasteMode.value .. ' ]'
msg = msg .. '[ *'..state.Mainqd.current
if state.UseAltqd.value == true then
msg = msg .. '/'..state.Altqd.current
end
msg = msg .. '* ]'
add_to_chat(060, msg)
eventArgs.handled = true
end
-------------------------------------------------------------------------------------------------------------------
-- User self-commands.
-------------------------------------------------------------------------------------------------------------------
-- Called for custom player commands.
function job_self_command(cmdParams, eventArgs)
if cmdParams[1] == 'qd' then
if cmdParams[2] == 't' then
state.IgnoreTargetting:set()
end
local doqd = ''
if state.UseAltqd.value == true then
doqd = state[state.Currentqd.current..'qd'].current
state.Currentqd:cycle()
else
doqd = state.Mainqd.current
end
send_command('@input /ja "'..doqd..'" <t>')
end
end
-------------------------------------------------------------------------------------------------------------------
-- Utility functions specific to this job.
-------------------------------------------------------------------------------------------------------------------
function determine_haste_group()
-- Gearswap can't detect the difference between Haste I and Haste II
-- so use winkey-H to manually set Haste spell level.
-- Haste (buffactive[33]) - 15%
-- Haste II (buffactive[33]) - 30%
-- Haste Samba - 5%/10%
-- Victory March +0/+3/+4/+5 9.4%/14%/15.6%/17.1%
-- Advancing March +0/+3/+4/+5 6.3%/10.9%/12.5%/14%
-- Embrava - 30%
-- Mighty Guard (buffactive[604]) - 15%
-- Geo-Haste (buffactive[580]) - 40%
classes.CustomMeleeGroups:clear()
if state.HasteMode.value == 'Haste II' then
if(((buffactive[33] or buffactive[580] or buffactive.embrava) and (buffactive.march or buffactive[604])) or
(buffactive[33] and (buffactive[580] or buffactive.embrava)) or
(buffactive.march == 2 and buffactive[604])) then
add_to_chat(215, '---------- <<<< | Magic Haste Level: 43% | >>>> ----------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ((buffactive[33] or buffactive.march == 2 or buffactive[580]) and buffactive['haste samba']) then
add_to_chat(004, '---------- <<<< | Magic Haste Level: 35% | >>>> ----------')
classes.CustomMeleeGroups:append('HighHaste')
elseif ((buffactive[580] or buffactive[33] or buffactive.march == 2) or
(buffactive.march == 1 and buffactive[604])) then
add_to_chat(008, '---------- <<<< | Magic Haste Level: 30% | >>>> ----------')
classes.CustomMeleeGroups:append('MidHaste')
elseif (buffactive.march == 1 or buffactive[604]) then
add_to_chat(007, '---------- <<<< | Magic Haste Level: 15% | >>>> ----------')
classes.CustomMeleeGroups:append('LowHaste')
end
else
if (buffactive[580] and ( buffactive.march or buffactive[33] or buffactive.embrava or buffactive[604]) ) or
(buffactive.embrava and (buffactive.march or buffactive[33] or buffactive[604])) or
(buffactive.march == 2 and (buffactive[33] or buffactive[604])) or
(buffactive[33] and buffactive[604] and buffactive.march ) then
add_to_chat(215, '---------- <<<< | Magic Haste Level: 43% | >>>> ----------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ((buffactive[604] or buffactive[33]) and buffactive['haste samba'] and buffactive.march == 1) or
(buffactive.march == 2 and buffactive['haste samba']) or
(buffactive[580] and buffactive['haste samba'] ) then
add_to_chat(004, '---------- <<<< | Magic Haste Level: 35% | >>>> ----------')
classes.CustomMeleeGroups:append('HighHaste')
elseif (buffactive.march == 2 ) or
((buffactive[33] or buffactive[604]) and buffactive.march == 1 ) or -- MG or haste + 1 march
(buffactive[580] ) or -- geo haste
(buffactive[33] and buffactive[604]) then
add_to_chat(008, '---------- <<<< | Magic Haste Level: 30% | >>>> ----------')
classes.CustomMeleeGroups:append('MidHaste')
elseif buffactive[33] or buffactive[604] or buffactive.march == 1 then
add_to_chat(007, '---------- <<<< | Magic Haste Level: 15% | >>>> ----------')
classes.CustomMeleeGroups:append('LowHaste')
end
end
end
function define_roll_values()
rolls = {
["Corsair's Roll"] = {lucky=5, unlucky=9, bonus="Experience Points"},
["Ninja Roll"] = {lucky=4, unlucky=8, bonus="Evasion"},
["Hunter's Roll"] = {lucky=4, unlucky=8, bonus="Accuracy"},
["Chaos Roll"] = {lucky=4, unlucky=8, bonus="Attack"},
["Magus's Roll"] = {lucky=2, unlucky=6, bonus="Magic Defense"},
["Healer's Roll"] = {lucky=3, unlucky=7, bonus="Cure Potency Received"},
["Drachen Roll"] = {lucky=4, unlucky=8, bonus="Pet Magic Accuracy/Attack"},
["Choral Roll"] = {lucky=2, unlucky=6, bonus="Spell Interruption Rate"},
["Monk's Roll"] = {lucky=3, unlucky=7, bonus="Subtle Blow"},
["Beast Roll"] = {lucky=4, unlucky=8, bonus="Pet Attack"},
["Samurai Roll"] = {lucky=2, unlucky=6, bonus="Store TP"},
["Evoker's Roll"] = {lucky=5, unlucky=9, bonus="Refresh"},
["Rogue's Roll"] = {lucky=5, unlucky=9, bonus="Critical Hit Rate"},
["Warlock's Roll"] = {lucky=4, unlucky=8, bonus="Magic Accuracy"},
["Fighter's Roll"] = {lucky=5, unlucky=9, bonus="Double Attack Rate"},
["Puppet Roll"] = {lucky=3, unlucky=7, bonus="Pet Magic Attack/Accuracy"},
["Gallant's Roll"] = {lucky=3, unlucky=7, bonus="Defense"},
["Wizard's Roll"] = {lucky=5, unlucky=9, bonus="Magic Attack"},
["Dancer's Roll"] = {lucky=3, unlucky=7, bonus="Regen"},
["Scholar's Roll"] = {lucky=2, unlucky=6, bonus="Conserve MP"},
["Naturalist's Roll"] = {lucky=3, unlucky=7, bonus="Enh. Magic Duration"},
["Runeist's Roll"] = {lucky=4, unlucky=8, bonus="Magic Evasion"},
["Bolter's Roll"] = {lucky=3, unlucky=9, bonus="Movement Speed"},
["Caster's Roll"] = {lucky=2, unlucky=7, bonus="Fast Cast"},
["Courser's Roll"] = {lucky=3, unlucky=9, bonus="Snapshot"},
["Blitzer's Roll"] = {lucky=4, unlucky=9, bonus="Attack Delay"},
["Tactician's Roll"] = {lucky=5, unlucky=8, bonus="Regain"},
["Allies' Roll"] = {lucky=3, unlucky=10, bonus="Skillchain Damage"},
["Miser's Roll"] = {lucky=5, unlucky=7, bonus="Save TP"},
["Companion's Roll"] = {lucky=2, unlucky=10, bonus="Pet Regain and Regen"},
["Avenger's Roll"] = {lucky=4, unlucky=8, bonus="Counter Rate"},
}
end
function display_roll_info(spell)
rollinfo = rolls[spell.english]
local rollsize = (state.LuzafRing.value and 'Large') or 'Small'
if rollinfo then
add_to_chat(104, '[ Lucky: '..tostring(rollinfo.lucky)..' / Unlucky: '..tostring(rollinfo.unlucky)..' ] '..spell.english..': '..rollinfo.bonus..' ('..rollsize..') ')
end
end
-- Determine whether we have sufficient ammo for the action being attempted.
function do_bullet_checks(spell, spellMap, eventArgs)
local bullet_name
local bullet_min_count = 1
if spell.type == 'WeaponSkill' then
if spell.skill == "Marksmanship" then
if spell.element == 'None' then
-- physical weaponskills
bullet_name = gear.WSbullet
else
-- magical weaponskills
bullet_name = gear.MAbullet
end
else
-- Ignore non-ranged weaponskills
return
end
elseif spell.type == 'CorsairShot' then
bullet_name = gear.QDbullet
elseif spell.action_type == 'Ranged Attack' then
bullet_name = gear.RAbullet
if buffactive['Triple Shot'] then
bullet_min_count = 3
end
end
local available_bullets = player.inventory[bullet_name] or player.wardrobe[bullet_name]
-- If no ammo is available, give appropriate warning and end.
if not available_bullets then
if spell.type == 'CorsairShotShot' and player.equipment.ammo ~= 'empty' then
add_to_chat(104, 'No Quick Draw ammo left. Using what\'s currently equipped ('..player.equipment.ammo..').')
return
elseif spell.type == 'WeaponSkill' and player.equipment.ammo == gear.RAbullet then
-- add_to_chat(104, 'No weaponskill ammo left. Using what\'s currently equipped (standard ranged bullets: '..player.equipment.ammo..').')
return
else
add_to_chat(104, 'No ammo ('..tostring(bullet_name)..') available for that action.')
eventArgs.cancel = true
return
end
end
-- Don't allow shooting or weaponskilling with ammo reserved for quick draw.
if spell.type ~= 'CorsairShot' and bullet_name == gear.QDbullet and available_bullets.count <= bullet_min_count then
add_to_chat(104, 'No ammo will be left for Quick Draw. Cancelling.')
eventArgs.cancel = true
return
end
-- Low ammo warning.
if spell.type ~= 'CorsairShot' and state.warned.value == false
and available_bullets.count > 1 and available_bullets.count <= options.ammo_warning_limit then
local msg = '***** LOW AMMO WARNING: '..bullet_name..' *****'
--local border = string.repeat("*", #msg)
local border = ""
for i = 1, #msg do
border = border .. "*"
end
add_to_chat(104, border)
add_to_chat(104, msg)
add_to_chat(104, border)
state.warned:set()
elseif available_bullets.count > options.ammo_warning_limit and state.warned then
state.warned:reset()
end
end
-- Select default macro book on initial load or subjob change.
function select_default_macro_book()
if player.sub_job == 'DNC' then
set_macro_page(1, 19)
else
set_macro_page(1, 19)
end
end
function set_lockstyle()
send_command('wait 2; input /lockstyleset 1')
end
Phoenix.Pretre
サーバ: Phoenix
Game: FFXI
Posts: 52
By Phoenix.Pretre 2016-12-29 21:52:53
ok so im about to finish my ragnarok ag and I need a new toy, my question is as I already have lvl 90 armagedon is it worth 119 ag compared to other options like death p and holliday
サーバ: Asura
Game: FFXI
Posts: 2666
By Asura.Ladyofhonor 2016-12-29 22:17:06
If you're going to get a single gun for COR, Armageddon is your gun.
Sylph.Oraen
サーバ: Sylph
Game: FFXI
Posts: 2087
By Sylph.Oraen 2016-12-29 22:21:07
With shooting coming back into play lately, AG Arma is exceptionally powerful. The ranged TP phase with ODT provides absurd numbers, especially in combination with Triple Shot. The ammo provided from the gun also provides some excellent ranged accuracy compared to other options. The 50 base AGI and increase in skill also provides much higher racc in comparison to Fomalhaut, our other best option for physical damage.
Death Penalty is my absolute favorite RMEA weapon I've built. The huge boost to Leaden through the hidden effect and the ridiculously strong bullets is amazing. If you're doing a lot of darkness-based magic setups, it's utterly amazing. With good gear and Tenebrae Gambit, you'll easily hit capped Leaden and SC damage while also providing additional support for your BLMs.
Both weapons are excellent in different situations. I spend more time doing magic setups, so I have a preference towards Death Penalty. However, I've put a lot of effort into ranged setups lately, so Armageddon is my new project.
[+]
サーバ: Asura
Game: FFXI
Posts: 2666
By Asura.Ladyofhonor 2016-12-29 22:27:46
Agreed on that, for the strategy COR is often DDing for, DP is irreplaceable and unbeatable. But Arma works in all situations (save melee TP + Savage usage) which is why I say it's the overall gun. DP strengthens COR's biggest strength, but it offers nothing on anything resistant to dark. Arma is 2nd best for Leaden, for Last Stand, best for WF, it is always usable.
That said, a serious COR will get all the guns for the bullets alone. I guess I need to get serious at some point.
[+]
Phoenix.Capuchin
サーバ: Phoenix
Game: FFXI
Posts: 3599
By Phoenix.Capuchin 2016-12-29 23:39:59
I just finished my AG Armageddon this week, and I love it.
Another thing that was a strong consideration for me, which pushed me to complete it, is that Arma is an excellent gun for two jobs. Much like COR, for RNG Arma is also a great all around weapon - insane AM3 damage, great Racc, good for all of each job's marksmanship WS (best WF, 2nd best Leaden/Trueflight, 2nd best Last Stand), etc.
So if you want a lot of utility for both jobs, Arma is really tempting. And if the meta shifts more toward pew pew as it seems things might be going, the sheer power from ranged attacking under Empy AM3 makes Arma a reeeealy compelling choice for that kind of use case.
[+]
サーバ: Shiva
Game: FFXI
Posts: 711
By Shiva.Eightball 2016-12-30 00:40:28
Arma is seriously a good gun and i was considering getting it just for the ranged goodness however it really depends on how you use your Cor most, DP is seriously unparalleled for magic dmg not just with Salute but also the bonus to QD is outstanding (i've hit 15kish with single shot with Geo).
in the end it really comes down to what you want for cor: DP = mage setups (mostly) , Arma = Best Racc and shooting with AM3 up, Forma = best phys bullets + SC potency + IIRC beats Arma on last stand w/o AM3 up.
Forma is likely easiest gun to make
DP is somewhat tedious but not too bad
Arma is mostly just spending a lot of money (unless you farm it all, and IMO makes it the worst quest of the 3)
[+]
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-30 02:52:23
I'll start out by saying all 3 guns are amazing and Eightball and others outlined them nicely but...
I think if you're making only one gun Aeonic is the way to go.
Its doesn't have quite the R.Acc of Arma but has more DMG + DMG bullets.
Keeping AM3 up on ARMA isn't the easist thing to do and to do so you have to use wildfire which is pretty crappy on most mobs. Compared to the 3 Leadens or Last Stands you're shooting off at 1750 in the same time frame to build 3k TP. Of-course void if its a fight you get to start 3k TP with.
Having Last Stand have the Light property is huge.
Its beats Arma and DP at lower TP Leaden spams. Edit: Sorry was a mistake when I was entering custom values.
I think you get a great all around gun with it. Great for physical and magical.
[+]
Sylph.Oraen
サーバ: Sylph
Game: FFXI
Posts: 2087
By Sylph.Oraen 2016-12-30 03:24:50
I will definitely support Fomalhaut's change to Last Stand's SC properties being absolutely huge on it. High base damage, 500 TP bonus, and the bullets make it a ridiculously strong Last Stand gun.
However, I need to take issue with the Leaden Salute statement. Could you share what buffs you're getting or what mobs you're fighting to make Fomalhaut beat DP for low TP Leaden? I've always seen consistently lower Leaden damage through using Fomalhaut than my DP.
Testing on the piddly little Mandies in Ceizak, I'm getting 20174 with DP and 18583 with Fomalhaut at exactly 1k . Damage difference only increases as TP rises.
ItemSet 336634
This is my current set.
-30 AGI/20 macc + mdmg/10 WSD cape
-33 macc/34MAB legs
-19 macc/29 MAB/4WSD feet
-Capped Samnuha
-MAB/TP bonus Moonshade
-Carmine path D
No buffs outside of Tactician's for exact TP values.
If you could share your findings, I'd appreciate it
[+]
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-30 09:51:16
@Oraen - I typo'd when entering customs values it (Aeonic) doesn't win even at 1k spam. On a target close to a mandy I don't have it pulling ahead nearly that much at 1k (1250DP) vs (1750 fom). Is that test of yours /war for another 200 tp bonus by chance?
Edit: BTW since this got me to look into what Afania said about /war not giving Fencer bonus in the spreadsheet... Its does but atm its set for TP Bonus: 20 and Crit rate 5%. Should be 200 and crit 3% for fencer 1 guess the TP Bonus part is left over from the old system.
By Afania 2016-12-30 12:18:16
ok so im about to finish my ragnarok ag and I need a new toy, my question is as I already have lvl 90 armagedon is it worth 119 ag compared to other options like death p and holliday
Worth it or not is subjective. I love mine, since it's my first REMA years ago so there's huge emotional attachment. But I also have heard many, many people said Arma is the least useful COR REMA compare with dp and fomalhaut. And I can't say I totally disagree with them, here is why.
1) Arma is still the best gun for WF, but WF is not nearly as game changing as leaden in mage setup due to the lack of fire MB synergy. There are many NM in this game that prefers fire damage, such as escha ru'aun T3s, Vinipata, zerde, Carousing Celine etc. Most people just use BLM and fire MB them instead of use COR and WF them to death. Although you can still use a COR in BLM fire MB setup , you can't have WF close fusion/light for BLM to MB fire, unlike leaden which can fit into death MBs much better.
In other words, in fire MB setup COR can only occasionally WF between SCs, and that cuts down COR's output in fire MB, unlike salute can do a lot more in death MB setups.
WF is also a mathematically weaker ws than leaden. But it SC with itself, with a strong SC gear/buff and fire shot boosts, WF spam at 1k tp still has potential to beat leaden spam with dp assuming the NM doesn't have special elemental resistance. The issue is just that nobody make a party of COR and RNG WF stuff to death when fire dmg is required. Everyone just BLM SCH 24/7. And if they DO take a ranged job for fire dmg, they do RNG with trueflight(which can close SC for fire) anyways.
2) It's the best /ra gun on paper with AM3 up if we don't consider SC, on my spreadsheet it's around 500+ dps ahead of Fomalhaut at capped pdif using AM3 up set I posted on last page. This is more than many people thinks and I think many people who screams "Fomalhaut!" in ranged dps situations definitely underestimated Arma's /ra dps.
That being said, in real FFXI most ranged content doesn't favor AM3 at all. AFAIK ppl only use ranged setup in master trials, ambuscade, UNM pw2 and if I remember correctly, you can't start at 3k in all of those content. (popping UNM removes tp, no?)
So while arma COR slowly built tp for Am3, Fomalhaut COR can tp > ws > tp > ws SC and do considerable dmg. That's not to mention there's always risk of dying in those content, and every time an arma COR die with AM3 up, it's more dps lose than Fomalhaut.
Escha favors Arma the most, since you can start with AM3 then use wings for another AM3 when it wears. But nobody use /ra setup in Escha.
3) It has the highest racc, but if your pt leader can accommodate your racc needs with buffs, then it's no longer an advantage. According to Comeatmebro, it's still possible to cap racc in master trials with Fomalhaut.
4) Out of all the REMA bullets, bullets from arma is the least game changing one. Unless you're somehow on dispel/sleep duty on COR, which isn't very practical due to recast.
5) I'm probably going to agree with Chiaia that if you only want 1 gun on COR, Fomalhaut is a more versatile weapon and probably worth the effort more. Fomalhaut's ability to SC is very game changing, and it's 2nd best for leaden, best for last stand, and doesn't require AM3 to ra dps well. In situations that you need wf you can always swap to woc gun or something if fomalhaut is all you have.
----------
That being said, if you really like the job, you'd still get one, since you never know when will SE release new content that strongly favors Arma. There are situations that still needs it. WF is still great for lowman if you don't SCH all things like others, and extra ra dps from WF spamming and needing less racc support makes Arma No.1 choice if you lowman content that's weak against fire.
I post this in Chiaia's thread months ago but I'd like to iterate how strong WF could be with gambit:
You can probably do capped wf dmg with any gun and still cap racc on T3 since evasion is nerfed now. But pre evasion nerf it's rather satisfying to solo DD those T3 down in 1-2 min on COR with just GEO buffs, when everyone else were "BLM SCH onry".
Arma really, really shines in lowman, none melee friendly content that favors fire dmg, and needs moderate amount of racc to hit.
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-30 12:35:07
f I remember correctly, you can't start at 3k in all of those content. (popping UNM removes tp, no? Nah, you keep TP on pop in unity its liek escha geo loses bubbles through.
[+]
Phoenix.Capuchin
サーバ: Phoenix
Game: FFXI
Posts: 3599
By Phoenix.Capuchin 2016-12-30 12:51:54
1) Arma is still the best gun for WF, but WF is not nearly as game changing as leaden in mage setup
I wouldn't discount Arma being a strong alternative for Leaden (and Trueflight). If you're only going to make one gun, there's something to be said for that. Arma/Fomal both have more flexibility than DP across a wider variety of situations.
Quote: 2) It's the best /ra gun on paper with AM3 up if we don't consider SC, on my spreadsheet it's around 500+ dps ahead of Fomalhaut at capped pdif using AM3 up set I posted on last page. This is more than many people thinks and I think many people who screams "Fomalhaut!" in ranged dps situations definitely underestimated Arma's /ra dps.
That being said, in real FFXI most ranged content doesn't favor AM3 at all. AFAIK ppl only use ranged setup in master trials, ambuscade, UNM pw2 and if I remember correctly, you can't start at 3k in all of those content. (popping UNM removes tp, no?)
Popping UNM does not remove TP, so Arma (or DP) are not at much of a disadvantage there. But this is a worthy consideration, and it's going to depend on what content you're doing and how future content is developed. For stuff like Omen it's pretty easy to plan ahead for boss floors so you can start a boss with 3000tp, for popped NMs starting with tp is not an issue, so really it's just an issue in instanced content that wipes tp on entry.
The interesting thing to watch for is whether ranged TP strats start making a comeback, in which case Arma and Fomal will shine more.
Quote: 3) It has the highest racc, but if your pt leader can accommodate your racc needs with buffs, then it's no longer an advantage. According to Comeatmebro, it's still possible to cap racc in master trials with Fomalhaut.
Having the most Racc is still a very useful trait, and might allow you to not need max Racc buffs. From a COR perspective, consider that if you're in a party with RNGs you will likely be the low man in terms of Racc (compared to RNG's higher native racc traits, sharpshot, and some gear differences), so it might be more important for you to make up a gap to keep the needed buffs relatively even across party members.
Also very relevant that crit damage with Empy AM3 up is utterly ridiculous, so having some extra Racc is a very nice luxury that enables you to swap some of it out for a more crit focused ranged set.
Quote: Fomalhaut's ability to SC is very game changing, and it's 2nd best for leaden, best for last stand, and doesn't require AM3 to ra dps well.
Can someone point me to Leaden comparison between Arma and Fomal (or a relatively current spreadsheet that I seem to be overlooking if it's posted)? Obviously DP is best, but for 2nd place is it really the case that AGI+50 loses out to TP Bonus? If so, I can't imagine it's by much.
You can really spin these kinds of advantages for each gun:
DP is best for Leaden and QD, though falls behind for Last Stand and /ra
Armageddon is best for pure /ra damage, best for WF, very good for all WS thanks to huge chunk of AGI.
Fomalhaut is best for Last Stand, very good for all WS thanks to TP Bonus, good for /ra. Unique SC property and ease of use without having to worry about Mythic/Empy AM is a very nice bonus. Aeonics are not necessarily as attainable for everyone, so the barrier to entry may be lower for Mythic/Empy.
Fomalhaut and Armageddon both have the advantage of being usable on COR and RNG, so for those who want that added flexibility that's a pretty significant point.
EDIT: something that kinda tickles me, for the LONG time CORs out there... this is a little reminiscent of COR and the common "big 3" guns circa 2006-2007. Coffinmaker as the ranged/all arounder gun, Martial for TP Bonus, Corsair's for QD. I guess what's old is new :)
By Afania 2016-12-30 13:40:16
Having the most Racc is still a very useful trait, and might allow you to not need max Racc buffs. From a COR perspective, consider that if you're in a party with RNGs you will likely be the low man in terms of Racc (compared to RNG's higher native racc traits, sharpshot, and some gear differences), so it might be more important for you to make up a gap to keep the needed buffs relatively even across party members.
Also very relevant that crit damage with Empy AM3 up is utterly ridiculous, so having some extra Racc is a very nice luxury that enables you to swap some of it out for a more crit focused ranged set.
I'm aware of Arma's crit build, in fact I was the one who abused it back in Feb. The issue is that unless you get extremely lucky with DM augment, the racc advantage is negated when using a crit dmg build.
To illustrate my point, in last stand situations, my Arma AM3 crit dmg tp set actually has lower racc than my fomalhaut stp set, because the gears used in stp set(adhemar hands/legs) has high racc, more so if you have +1s. While Darraigner's Brais(what I have for crit-dmg) doesn't have any racc. Arma is only 37 racc ahead(50x0.75), so it's not THAT far ahead to offset the disadvantage of crit-hit dmg gears.
According to my spreadsheet, if your crit-dmg isn't high enough, then crit-dmg/rate build isn't worth using, and stp build becomes more preferable since tp overflow still adds more dmg to your ws. A strong Arma AM3 crit hit dmg build isn't very far ahead of perfect stp build, but the gears are either much harder to obtain(requires aug) or you have to sacrifice tons of racc for it(use darraigner's), and the dps difference between perfect stp build and strong crit-hit dmg build is like 50.
So yeah, while crit dmg/racc is nice little extra bonus, it's not super zomg game changing when comparing with Fomalhaut+full stp set. It's just much, much easier with Fomalhaut. And that's before considering the SC dmg, no risk of dying and losing AM3, nor having to get 3k tp and get another 3k after 3 min.
I definitely agree that if you pt with RNG, and pt buffs are accommodating RNG instead of COR, arma + max racc set is the way to go, but it can go the other way around. RNG can lower their racc for 3 hit, and take advantage of last stand tp overflow if the pt buffs accommodate COR racc needs. So again, it's situational and not by all end all favors Arma in this case.
Don't get me wrong, I'm not here to trash Arma, it's still my first expensive REMA with emotional attachment and I really hate someone who bandwagoned a Fomalhaut told me Arma isn't worth getting because Fomalhaut takes 2 days for them. But objectively speaking, Fomalhaut is just too easy in terms of gearing/playstyle, really.
That being said, I'd still recommend getting an arma if you're serious about /ra. Having the extra racc flexibility from bullets and AGI depending on pt buff is pretty useful.
Quote: Can someone point me to Leaden comparison between Arma and Fomal (or a relatively current spreadsheet that I seem to be overlooking if it's posted)? Obviously DP is best, but for 2nd place is it really the case that AGI+50 loses out to TP Bonus? If so, I can't imagine it's by much.
https://docs.zoho.com/file/n7dt9737650532eb84988a9ce4192efd00fff
EDIT: something that kinda tickles me, for the LONG time CORs out there... this is a little reminiscent of COR and the common "big 3" guns circa 2006-2007. Coffinmaker as the ranged/all arounder gun, Martial for TP Bonus, Corsair's for QD. I guess what's old is new :)
It's actually big four these days, because tp bonus magian :) Real serious COR will have all 4.
[+]
By Afania 2016-12-31 16:29:52
I post this a month ago on Reddit but not here, so I'd like to share the info here.
For those who /BLM for leaden/wf and don't have a real BLM in pt, elemental seal Burn increases magical WS dmg by lowering target INT.
Additionally, fire shot x2 further increases -INT effect, tested in pvp and each fire shot decreases INT by 3, x2 fire shot decreases INT by 6. So that's 19 more dINT you can get from Burn.
-INT effect is 13 if player has 150 more INT than the mob, and that's possibly the cap(unsure if cap is higher with more INT)
Since fire shot with AF3 feet has boosts WF dmg, it's a good idea just fire shot after Burn for maximum WF dmg. Tested on mandy outside of adoulin, landing Burn does increase WF dmg.
And here comes COR INT set for elemental seal Burn >.>:
ItemSet 347984
Back piece is the same as Aeolian Edge one, INT+30.
Valefor.Sehachan
サーバ: Valefor
Game: FFXI
Posts: 24219
By Valefor.Sehachan 2016-12-31 16:37:54
That's interesting but -INT effect is 13 if player has 150 more INT than the mob you really think that is the case with blm only sub?
edit: in endgame obviously
By Afania 2016-12-31 16:41:48
That's interesting but -INT effect is 13 if player has 150 more INT than the mob you really think that is the case with blm only sub?
edit: in endgame obviously
What do you mean? You mean /BLM can't reach 150 dINT? Or /BLM doesn't have the same effect as BLM main?
I tested in pvp on COR/BLM and I was able to hit -13 INT with 150 more INT than my target.
In real high lv endgame BLM should be the one casting, higher macc etc. But for low man lower tier content without real BLM /BLM is the only source for Burn.
[+]
Siren.Kyte
サーバ: Siren
Game: FFXI
Posts: 3332
By Siren.Kyte 2016-12-31 17:42:46
I don't think elemental debuffs are based on dINT, but rather just your INT total- meaning you're capped on anything as long as you land it.
Valefor.Sehachan
サーバ: Valefor
Game: FFXI
Posts: 24219
By Valefor.Sehachan 2016-12-31 17:59:42
What do you mean? You mean /BLM can't reach 150 dINT? Yeah. Not being provocative, I honestly don't know the stats of the current endgame mobs.
By Afania 2016-12-31 18:03:00
I don't think elemental debuffs are based on dINT, but rather just your INT total- meaning you're capped on anything as long as you land it.
From my test in PvP this is probably isn't the case, as I didn't get -13 INT from Burn until I reached +150 INT by asking my testing target to take off the gears. My casting gear didn't change if I remember correctly, it was my target INT value changed due to taking off gears.
I'm fairly certain INT value affects -INT on target unless this spell behave differently in PvP.
If anyone interested they can retest it, since I did it month ago and my memory is kinda blurred so I may be wrong.
By Afania 2016-12-31 18:08:40
What do you mean? You mean /BLM can't reach 150 dINT? Yeah. Not being provocative, I honestly don't know the stats of the current endgame mobs.
I honestly have no idea as well, but until INT is proven having no effect I think we may as well cast it.
Against highest lv target it may be useless, but something like T2 T3 it shouldn't be that bad isn't it? Idk. You usually get real blm in very high lv endgame anyways.
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-31 19:22:14
Code
+------------------------------+
| Elemental Debuffs |
+------------------------------+
| INT | DoT | Stat - |
+---------+-----------+--------+
| 1-39 | 1 HP/tick | -5 |
+---------+-----------+--------+
| 40-69 | 2 HP/tick | -7 |
+---------+-----------+--------+
| 70-99 | 3 HP/tick | -9 |
+---------+-----------+--------+
| 100-149 | 4 HP/tick | -11 |
+---------+-----------+--------+
| 150+ | 5 HP/tick | -13 |
+---------+-----------+--------+
I doubt in Endgame were hitting any wheres near 150 lol but still cool.
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-31 20:42:59
Looks like PVP is different then cause its not dINT on mobs.
Naked I have exactly 101 Int as COR/BLM so I did a test then took out 2 Int Merits to goto 99.
Blanched Mandy - Wildfire DMG
101 Int (Burn) - 3023
99 Int (Burn) - 3017
Makes sense to me pvp has a lot of nurfs to things so some jobs wouldn't just trash all others at 75. Looks like Elemental Debuffs got changed to a dStat check in there based on your testing Afinia.
I'll do some futher testing on 150+ no one has probably checked high int values since 75 days since back then 200 probably wasn't reachable.
Siren.Kyte
サーバ: Siren
Game: FFXI
Posts: 3332
By Siren.Kyte 2016-12-31 21:27:40
To my knowledge, it has been tested up to at least 300+ INT and there was no additional tier.
[+]
By Afania 2016-12-31 21:40:08
Looks like PVP is different then cause its not dINT on mobs.
Naked I have exactly 101 Int as COR/BLM so I did a test then took out 2 Int Merits to goto 99.
Blanched Mandy - Wildfire DMG
101 Int (Burn) - 3023
99 Int (Burn) - 3017
Makes sense to me pvp has a lot of nurfs to things so some jobs wouldn't just trash all others at 75. Looks like Elemental Debuffs got changed to a dStat check in there based on your testing Afinia.
I'll do some futher testing on 150+ no one has probably checked high int values since 75 days since back then 200 probably wasn't reachable.
Soo, you mean mob INT is irrelevant to the potency of Burn, as long as you cast in 150 INT you get the full effect? Since you still get 6 more wf dmg increase from 2 more INT from Burn according to your test.
Asura.Chiaia
VIP
サーバ: Asura
Game: FFXI
Posts: 1656
By Asura.Chiaia 2016-12-31 21:43:05
[+]
By Afania 2016-12-31 22:10:53
Is it possible to test whether fire shot x2 on Burn further decrease mob INT outside of PVP, and the value? Thanks.
By Afania 2017-01-04 16:54:27
Just providing some updated info regarding people considering Arma. Verda recently updated rng spreadsheet and have AM3 arma pull off 3k more dps over Fomalhaut and 4k more than relics.
RNG gets soooo much more from Arma than cor thanks to deadaim, its probably one of the strongest rng weapon on paper and it's still 1 weapon usable on 2 jobs. Definitely consider it if you play rng.
|
|