Does anyone have an amazing lua they would like to share? I finally got my aeonic katana and already have a lot of light armor job gear and would like to start working on my NIN now. Very much appreciated.
If you aren't using the Migawari body for the state.buff check then why not just leave sets.buff.Migawari blank so you don't mess up with your TP set w/ max haste since Adhemar isn't ideal for haste capped situations.
May be a good idea to make a switch that can be toggled on/off and determines if you equip the Migawari body if Migawari is active, does that make sense?
I don't enough about Gearswap to make the toggle happen.
You are by all means correct, I normally do use the body, but I havent updated my lua since I last used nin, and that was on a mob I did not want the emp body for (specifically wanted adhemar at all times because I also dont have a haste/march toggle and needed the DW). Its why I havent deleted it all together, sometimes I will use it other times I do. I am also not smart enough to build a toggle for it haha, or wanting too due to macro line restrictions (I play with controller).
You are by all means correct, I normally do use the body, but I havent updated my lua since I last used nin, and that was on a mob I did not want the emp body for (specifically wanted adhemar at all times because I also dont have a haste/march toggle and needed the DW). Its why I havent deleted it all together, sometimes I will use it other times I do. I am also not smart enough to build a toggle for it haha, or wanting too due to macro line restrictions (I play with controller).
Does the determine_haste_group() function not determine what sets you are using?
Code
function determine_haste_group()
classes.CustomMeleeGroups:clear()
if buffactive.embrava and (buffactive.march == 2 or (buffactive.march and buffactive.haste)) then
classes.CustomMeleeGroups:append('MaxHaste')
elseif buffactive.march == 2 and buffactive.haste then
classes.CustomMeleeGroups:append('MaxHaste')
elseif buffactive.embrava and (buffactive.haste or buffactive.march) then
classes.CustomMeleeGroups:append('EmbravaHaste')
elseif buffactive.haste then
classes.CustomMeleeGroups:append('HighHaste')
elseif buffactive.march == 2 then
classes.CustomMeleeGroups:append('HighHaste')
elseif buffactive.march == 1 and buffactive['haste samba'] then
classes.CustomMeleeGroups:append('HighHaste')
end
end
Should be determining your haste group and setting the value so it changes your tp sets based on how much haste you have.
Interestingly enough though it seems to be lacking GEO-Haste and doesn't differentiate between Haste I and Haste II so that part could use some work.
Coding lua isn't my thing though, well not yet. If I could suggest actual changes I would, I am just trying to identify what changes would be ideal.
Also thank you for the lua, I will personally be using it once I get my NIN geared up. Currently gathering gear for both SMN and NIN xD.
I toggle my acc sets, then the haste function applies appropriate set to haste tier. I have therefore 9 sets, normal (low acc) which haste 0-30-capped haste, mid acc 0-30-capped, and max acc 0-30-capped.
You need a toggle for haste2 there is no way for gs to know the difference, they share came code. I think someone on forums has done this, but I just havent had time to incorporate it. Same goes for MG. I also tweaked it a bit for my normal use. I find I never am out of 3 states on haste - no haste, 30% (be it trusts for just haste2, or in a normal party with MG+haste), and maxed haste (normally solo too). If you find for you this is not the case this part will need major hauls for you. This is also why I never worried about MG, though I should someday.
By no means is my lua the best out there, but its a good start and has lots of little rules I like (lugras, obis, hattori, cursed, etc). I find it gets you where you need to be and honestly this is only a few thing left I would like in it for my uses, and I would add if someone else wrote bc i dont know how or got the time :D
1.) That MG / Haste2 code.
2.) Migwari toggle would be nice
3.) Enmity toggle for tanking (hope oneday we can again_
4.) I have it in my blu lua, but cant figure out how to get it to work here, but would like an auto update to a special PDT/mdt set for when sleep, terror, stun, etc are on me.
5.) I honestly dont get how the hybrid sets work, can someone share how I would use this on controller? Aka PDT+acc set, or EVA+High etc, etc.
6.) I would like to add a toggle to disable ammo (hate blinking for mages in cp/events)
7.) Would like an AM alert
There are more but as you can see I have lots to do, but that can be said of the other 7 jobs I actively play too lmao :D
function determine_haste_group()
classes.CustomMeleeGroups:clear()
-- assuming +4 for marches (ghorn has +5)
-- Haste (white magic) 15%
-- Haste Samba (Sub) 5%
-- Haste (Merited DNC) 10% (never account for this)
-- Victory March +0/+3/+4/+5 9.4/14%/15.6%/17.1% +0
-- Advancing March +0/+3/+4/+5 6.3/10.9%/12.5%/14% +0
-- Embrava 30% with 500 enhancing skill
-- Mighty Guard - 15%
-- buffactive[580] = geo haste
-- buffactive[33] = regular haste
-- buffactive[604] = mighty guard
-- state.HasteMode = toggle for when you know Haste II is being cast on you
-- Hi = Haste II is being cast. This is clunky to use when both haste II and haste I are being cast
if state.HasteMode.value == 'Hi' 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(8, '-------------Max-Haste Mode Enabled--------------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ( (buffactive[33] or buffactive.march == 2 or buffactive[580]) and buffactive['haste samba'] ) then
add_to_chat(8, '-------------Haste 35%-------------')
classes.CustomMeleeGroups:append('Haste_35')
elseif ( ( buffactive[580] or buffactive[33] or buffactive.march == 2 ) or
( buffactive.march == 1 and buffactive[604] ) ) then
add_to_chat(8, '-------------Haste 30%-------------')
classes.CustomMeleeGroups:append('Haste_30')
elseif ( buffactive.march == 1 or buffactive[604] ) then
add_to_chat(8, '-------------Haste 15%-------------')
classes.CustomMeleeGroups:append('Haste_15')
end
else
if ( buffactive[580] and ( buffactive.march or buffactive[33] or buffactive.embrava or buffactive[604]) ) or -- geo haste + anything
( buffactive.embrava and (buffactive.march or buffactive[33] or buffactive[604]) ) or -- embrava + anything
( buffactive.march == 2 and (buffactive[33] or buffactive[604]) ) or -- two marches + anything
( buffactive[33] and buffactive[604] and buffactive.march ) then -- haste + mighty guard + any marches
add_to_chat(8, '-------------Max Haste Mode Enabled--------------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ( (buffactive[604] or buffactive[33]) and buffactive['haste samba'] and buffactive.march == 1) or -- MG or haste + samba with 1 march
( buffactive.march == 2 and buffactive['haste samba'] ) or
( buffactive[580] and buffactive['haste samba'] ) then
add_to_chat(8, '-------------Haste 35%-------------')
classes.CustomMeleeGroups:append('Haste_35')
elseif ( buffactive.march == 2 ) or -- two marches from ghorn
( (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 -- haste with MG
add_to_chat(8, '-------------Haste 30%-------------')
classes.CustomMeleeGroups:append('Haste_30')
elseif buffactive[33] or buffactive[604] or buffactive.march == 1 then
add_to_chat(8, '-------------Haste 15%-------------')
classes.CustomMeleeGroups:append('Haste_15')
end
end
end
3.) Enmity toggle for tanking (hope oneday we can again_
But you should be putting haste into your enmity generation abilities anyway! Flash/Stun/Voke all those should have enmity(and haste where applicable). C'mooon. You can do it!
function determine_haste_group()
classes.CustomMeleeGroups:clear()
-- assuming +4 for marches (ghorn has +5)
-- Haste (white magic) 15%
-- Haste Samba (Sub) 5%
-- Haste (Merited DNC) 10% (never account for this)
-- Victory March +0/+3/+4/+5 9.4/14%/15.6%/17.1% +0
-- Advancing March +0/+3/+4/+5 6.3/10.9%/12.5%/14% +0
-- Embrava 30% with 500 enhancing skill
-- Mighty Guard - 15%
-- buffactive[580] = geo haste
-- buffactive[33] = regular haste
-- buffactive[604] = mighty guard
-- state.HasteMode = toggle for when you know Haste II is being cast on you
-- Hi = Haste II is being cast. This is clunky to use when both haste II and haste I are being cast
if state.HasteMode.value == 'Hi' 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(8, '-------------Max-Haste Mode Enabled--------------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ( (buffactive[33] or buffactive.march == 2 or buffactive[580]) and buffactive['haste samba'] ) then
add_to_chat(8, '-------------Haste 35%-------------')
classes.CustomMeleeGroups:append('Haste_35')
elseif ( ( buffactive[580] or buffactive[33] or buffactive.march == 2 ) or
( buffactive.march == 1 and buffactive[604] ) ) then
add_to_chat(8, '-------------Haste 30%-------------')
classes.CustomMeleeGroups:append('Haste_30')
elseif ( buffactive.march == 1 or buffactive[604] ) then
add_to_chat(8, '-------------Haste 15%-------------')
classes.CustomMeleeGroups:append('Haste_15')
end
else
if ( buffactive[580] and ( buffactive.march or buffactive[33] or buffactive.embrava or buffactive[604]) ) or -- geo haste + anything
( buffactive.embrava and (buffactive.march or buffactive[33] or buffactive[604]) ) or -- embrava + anything
( buffactive.march == 2 and (buffactive[33] or buffactive[604]) ) or -- two marches + anything
( buffactive[33] and buffactive[604] and buffactive.march ) then -- haste + mighty guard + any marches
add_to_chat(8, '-------------Max Haste Mode Enabled--------------')
classes.CustomMeleeGroups:append('MaxHaste')
elseif ( (buffactive[604] or buffactive[33]) and buffactive['haste samba'] and buffactive.march == 1) or -- MG or haste + samba with 1 march
( buffactive.march == 2 and buffactive['haste samba'] ) or
( buffactive[580] and buffactive['haste samba'] ) then
add_to_chat(8, '-------------Haste 35%-------------')
classes.CustomMeleeGroups:append('Haste_35')
elseif ( buffactive.march == 2 ) or -- two marches from ghorn
( (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 -- haste with MG
add_to_chat(8, '-------------Haste 30%-------------')
classes.CustomMeleeGroups:append('Haste_30')
elseif buffactive[33] or buffactive[604] or buffactive.march == 1 then
add_to_chat(8, '-------------Haste 15%-------------')
classes.CustomMeleeGroups:append('Haste_15')
end
end
end
Will maybe be a dumb question, but you can just copy and paste this whole part I assume? /console gs c toggle HasteMode as the macro call i assume?
You could copy and paste that. But do make sure you have enough defined sets for your melee classes. As you can see that means you need:
sets.engaged.<Acc>.<Haste level> (in more literal terms, this determine haste group function creates Melee Classes for 1) no haste, 2) "MaxHaste", 3) "Haste_35", 4) "Haste_30", 5) "Haste_15"
So something like "sets.engaged.Acc2.Haste_30"
And you will need to define -all of them-. Luckily a lot of set_combine() commands will save you tons of time.
Odium is a mainhand option if you wanna conserve some dmg kn ws. Blurred knife +1 if you wanna drop the bank.
Kustawi isn't -bad- either
A couple other notable daggers:
Malevolence for whenever you might care about MAB (also, probably NIN's best AoE farming tools for Aeolian Edge)
Atoyac (OAT) still has some use if for whatever reason you just want TP generation with a dagger but it's easy enough content that your acc is fine despite the 188 skill. For NIN, can come in handy for Abyssea if you're ever farming something.
Thanks Langly, I am going to try and updated my script tomorrow with those changes. I will tweak it probably for simplicity, I dislike having like 100 different sets (even if they are mostly empty), the game just isnt that complicated anymore for me haha. Though I will go to 1 extra haste tier that I never accounted for before (35%) but thats not a big issue, and easy copy and paste with a new name.
getting error right away from line 662.... cant figure it out. I updated my gearsets name etc to accommodate (no gear yet just want the syntax to work before i throw in gear). Any help?
@Azagarth
Embrava is 266/1024 @ 500 skill BTW 25.9%~ not 30. Just figured I'd point it out because a lot of people thought it was 25% flat then I noticed it wasn't and then saw 30% or your GS >.>
I've already been through all of this for THF, so hopefully this saves people some work. I don't like doing lots of sets I feel it is hard to maintain so use modifiers on my engaged/melee set with customize_melee_set instead. Then the order I put those rules will determine which takes slot priorities and I don't have nearly as many sets, just rules for how to combine them. Example: if you want light DT mode while haste capped, it'll replace you engaged sets with first haste then light dt. I make it work the same way for accuracy, so you can have a modifier for haste, accuracy, damagetaken, ranged weapon, damage type (can switch out to h2h, clubs, etc), on hits (like thf TH), or melee in you cp cape to take examples of what I did for THF. Below is just the stripped out for only haste parts. I'll be updating the lua with the rest my changes as I'm able to make them. Right now I'm mostly just skilling up (got katana, GKT, throwing, ninjitsu maxed now :D) I'll post the full lua when it's tested and done though. Note my engaged set will have haste capped setup in it.
Code
--Some Global Variables
hastetype=1
hastesambatype=0
hastetbl = S{'haste','march','geo-haste','indi-haste','embrava','haste samba','aftermath','mighty guard'}
function user_setup()
state.hastemode = M{['description'] = 'Haste Mode'}
state.hastemode:options('NoHaste','HasteI','HasteII','Capped')
--Binds--
send_command('bind ^q gs c hastetype')
send_command('bind @q gs c hastesambatype')
end
function customize_melee_set(meleeSet)
meleeSet = set_combine(meleeSet,sets.hastemode[state.hastemode.value])
end
function job_self_command(cmdParams,eventArgs)
command = cmdParams[1]:lower()
if command=='hastetype' then
if hastetype == 1 then hastetype=2
else hastetype = 1 end
add_to_chat(122,'Haste '..hastetype)
check_haste_level()
handle_equipping_gear(player.status)
elseif command=='hastesambatype' then
if hastesambatype == 0 then hastesambatype=1
elseif hastesambatype == 1 then hastesambatype = 2
else hastesambatype = 0 end
add_to_chat(122,'Hastesambatype '..hastesambatype)
end
end
function check_haste_level()
--pr(buffactive)
--33 is haste 1 and haste 2 580 is indi and geo haste
hastelevel = 0
if buffactive[33] and hastetype==1 then
hastelevel=hastelevel+15
add_to_chat(122,'Haste I detected')
elseif buffactive[33] and hastetype==2 then
hastelevel=hastelevel+30
add_to_chat(122,'Haste II detected')
end
if hastesambatype==1 then
hastelevel=hastelevel+5
add_to_chat(122,'Haste samba detected')
end
if hastesambatype==2 then
hastelevel=hastelevel+10
add_to_chat(122,'Haste samba (dnc) detected')
end
if buffactive[580] then --assuming non idris, indi/geo haste
hastelevel=hastelevel+33
--add_to_chat(122,'Geo Haste detected')
end
if buffactive['Mighty Guard'] then
hastelevel=hastelevel+15
--add_to_chat(122,'Mighty Guard detected')
end
if buffactive['slow'] then
hastelevel=hastelevel-30
add_to_chat(122,'Slow Detected')
end
if buffactive['Embrava'] then
hastelevel=hastelevel+25
end
if buffactive.march ==2 then --assuming song +3 at least
hastelevel=hastelevel+25
elseif buffactive.march ==1 then
hastelevel=hastelevel+15
elseif buffactive.march > 2 then
hastelevel=hastelevel+40
end
add_to_chat(122,'Haste level '..hastelevel)
if hastelevel == 0 then
add_to_chat(122,'Haste level set to NoHaste')
state.hastemode:set('NoHaste')
elseif hastelevel >= 40 then
add_to_chat(122,'Haste level set to Capped')
state.hastemode:set('Capped')
elseif hastelevel >= 25 then
add_to_chat(122,'Haste level set to HasteII')
state.hastemode:set('HasteII')
elseif hastelevel >= 15 then
add_to_chat(122,'Haste level set to HasteI')
state.hastemode:set('HasteI')
end
end
function job_buff_change(buff, gain)
buff_lower = buff:lower()
if hastetbl:contains(buff_lower) then
check_haste_level()
handle_equipping_gear(player.status)
elseif state.Buff[buff] ~= nil then
handle_equipping_gear(player.status)
end
end
function init_gear_sets()
--(1 - 35% Dual Wield)×(1024 - 256 Equipment Haste - 150 Magic Haste - 101 Job Ability Haste)÷1024 = 32.8% Delay remaining, or 67.18% Delay reduction
--(.65)×(1024 - 256 Equipment Haste)÷1024 = 48.75% Delay remaining, or 51.25% Delay reduction
--(.65)×(768)÷1024 = 48.75% Delay remaining, or 51.25% Delay reduction
--(.65)×(768)÷1024 = .4875
ah_body={ name="Adhemar Jacket", augments={'DEX+10','AGI+10','Accuracy+15',}}
floral={ name="Floral Gauntlets", augments={'Rng.Acc.+13','Accuracy+14','"Triple Atk."+1','Magic dmg. taken -2%',}}
dw_legs ={ name="Taeon Tights", augments={'Accuracy+17 Attack+17','"Dual Wield"+4','STR+2 DEX+2',}}
dw_feet ={ name="Taeon Boots", augments={'Accuracy+17 Attack+17','"Dual Wield"+5','STR+4 DEX+4',}}
sets.hastemode = {}
--(.26)×(.75) = .195, .65 - .26 = 39
sets.hastemode.NoHaste={ -- need 39, at 39
hands=floral, --5
body=ah_body,--5, 6 with HQ
ear1="Eabani Earring",--4
ear2="Suppanomimi",--5
waist="Reiki Yotai",--7
legs=dw_legs, --4
feet=dw_feet, --9
}
--(.65)×(618/1024) = .3922
--(.33)×(618/1024) = .1991, .65 - .33 = 32
sets.hastemode.HasteI={ -- need 32, at 32
body=ah_body,--5
hands=floral,--5
ear1="Eabani Earring",--4
ear2="Suppanomimi",--5
--waist="Reiki Yotai",--7
legs=dw_legs, --4
feet=dw_feet, --9
}
--(.65)×(468/1024) = .2970
--(.43)×(468/1024) = .1965, .65 - .43 = 22
sets.hastemode.HasteII={ -- need 22, at 22
body=ah_body,--5
hands=floral,--5
--ear1="Eabani Earring",--4
ear2="Suppanomimi",--5
waist="Reiki Yotai",--7
}
sets.hastemode.NoHaste=set_combine(sets.engaged,sets.hastemode.NoHaste)
sets.hastemode.HasteI=set_combine(sets.engaged,sets.hastemode.HasteI)
sets.hastemode.HasteII=set_combine(sets.engaged,sets.hastemode.HasteII)
sets.hastemode.Capped=set_combine(sets.engaged,{})
end
Most of my questions for NIN will regard tanking on NIN as I have never played a tank job before. So I hope you guys are willing to field these questions thanks:
1) Is yonin enmity JA enmity or gear enmity, assuming JA but want to make sure.
2) How does JA enmity and Gear enmity and merit enmity stack and is merit enmity considered gear enmity? Is it multiplicative or additive for enmity from JA and gear?
3) Is it ever worth it to WS in a +enmity set on NIN/can you actually result in more enmity gained that way?
4) what spells are spammable on NIN for enmity under which conditions, and if an enfeeble spell doesn't land will you still get enmity from it and will you get as much? I know there was a yonin update for utsusemi enmity but wanted to know if there is anything else the guide says a lot of JA have 1 enmity?
5) If you have +enmity on and take a lot of damage, does it actually make you lose more enmity...?
6) For tanking mobs with magic AoE would you use an mdt katana? What about breath? What are the best setups for magical and breath damage taken?
7) Gear enmity supposedly caps at 200, can NIN reach that? Can you provide a max enmity set and are there any compromise pieces that have additional stats but also less enmity?
8) How important is a full spell interupt set for NIN and can they reach the cap easily? If so what is the spell interupt gear?
9) Have you tanked anything ilvl 135+ on NIN and if so what? Can you share your experiences/gear choices?
10) How useful are the elemental resistance down aspects of ninjitsu for mana burn setups? I'm not expecting something like rayke which lowers mob family resistances but was it ever quantified how much macc it would add or how long it lasts?
Unsure how you arrive at .71% max haste. Capped Magical haste is 448/1024 and capped gear haste is 256/1024. Putting you at 68.75. Did you do some funky rounding on your Max Haste?
2) How does JA enmity and Gear enmity and merit enmity stack and is merit enmity considered gear enmity? Is it multiplicative or additive for enmity from JA and gear?
With the recent changes made to enmity (in regards to the games entire life) the particulars are unknown. It's believed gear enmity will cap upwards of +200 and JA enmity will augment this total.
4) what spells are spammable on NIN for enmity under which conditions, and if an enfeeble spell doesn't land will you still get enmity from it and will you get as much? I know there was a yonin update for utsusemi enmity but wanted to know if there is anything else the guide says a lot of JA have 1 enmity?
Usually a spell from a subjob with much larger values of CE and VE. Flash and Stun were and are still quite popular. Stun less-so if you're concerned with anything building resistances. I've actually taken a liking to NIN/RUN for this purpose.
5) If you have +enmity on and take a lot of damage, does it actually make you lose more enmity...?
I believe it has more to do with your Maximum HP affecting how much enmity is lost when taking damage. Though this equation I'm not particularly familiar with. Probably something available on the BG-Wiki entry for Enmity.
More of my opinions when I finish with my meeting here at work~
Unsure how you arrive at .71% max haste. Capped Magical haste is 448/1024 and capped gear haste is 256/1024. Putting you at 68.75. Did you do some funky rounding on your Max Haste?
I added base amounts and not the x/1024 % so 15+30+26 instead of the proper percentages, so basically I did round.
Side Question:
Shuriken TP formula: Is that calculated based off just the shuriken delay?
Like Happo w/ 192 delay generates 63 TP per throw? Or am I missing something
job_setup() is called before user_setup(), so you're trying to use the function before the mode exists. Just move the determine_haste_group() on line 23 to somewhere around line 43/44.
Most of my questions for NIN will regard tanking on NIN as I have never played a tank job before. So I hope you guys are willing to field these questions thanks:
I agree with Langly's answers on your questions #1-5.
However, a fundamental point I'd like to make is that in 2016, NIN really isn't a good tank job outside of very particular niche situations/specific mobs. RUN PUP PLD are far more useful in the vast majority of tanking situations.
A few examples where NIN works well as a tank: * Wrathare (135): quite good to avoid endeath on melee hits * Glazemane (128): blinking away single target melee hits (especially under Mighty Strikes and with the NM getting a large increasing attack boost over time) is important, and Migawari helps provide some insurance against 1-shot if you get hit with shadows down after an AoE. * Volatile Cluster (128): Migawari is nice to deal with Self-Destruct in a lowman group (need to turn and get Migawari back up if it's absorbed with timer down though)
More often than not, blink tanking in general isn't that viable on most serious content thanks to AoE shadow wipes and magic damage. Even when blink tanking does work, RUN is arguably better for that niche: much better native tanking JAs, much sturdier against magic damage that hits through shadows, much better for resisting status and Meva, better tanking gear options, etc. - plus the advantages to your party from stuff like Rayke/Gambit to support nuking offense, Vallation to help elemental defense and fast cast for your party, etc.
NIN is further hurt in a tanking role by having few good native enmity generation tools. Basically just Yonin and Issekigan. Yonin is kinda mediocre, considering that it decays over time and isn't incredibly potent to begin with - Utsu does apparently generate more enmity under the effect of Yonin, but it doesn't "feel" terribly strong (admittedly, I don't have much serious test data). Issekigan is nice for a short time, as it gives CE/VE upon a parry proc under the JA (enhanced by Issekigan Job Points), but it's not a very reliable long term since it's a 1min JA/5min recast. So, you're dealing with whatever you get from subjob. Flash from /RUN is often good enough, and it's a pretty good tanking subjob anyway thanks to the additional defensive tools, otherwise you're looking at Voke from /WAR, spamming /BLU spells, etc.
Evasion tanking is also kind of just not a thing on high end current content, as far as I can tell. I haven't personally looked at it extensively, but I've seen others who tried and were unimpressed, and it seems quite reasonable to expect that even gearing for eva, you're going to have a poor (if not floored or barely better) evasion rate. And then you still have to consider that you'd still want to rely on shadows as much as possible, and evasion is meaningless when mob TP moves or AoE spells simply wipe all of your shadows.
On the bright side, Utsu: San does have a super fast cast speed, and even when it's wiped you have Ni to fall back on. But any time you're fighting something that's just AoE wiping all of your shadows, that's decidedly less useful.
I suppose it's also fine for tanking something like CP parties while also adding some SC/MB ability. But I don't think that's really what we are talking about when we ask if NIN is a good tank on endgame content.
All that being said...
Quote:
6) For tanking mobs with magic AoE would you use an mdt katana? What about breath? What are the best setups for magical and breath damage taken?
Eh... for mobs with magic AoE, I just wouldn't be using a NIN tank to begin with. Get a RUN, PLD, PUP instead.
But if you just knew you were gonna eat AoE magical damage on NIN and you weren't concerned with taking a hit to your DPS, Raicho+1 or even +1/NQ might be somewhat plausible (for non-RMEA, for an RMEA holder I'd assume you'd want to use that anyway... plus the parry skill+269 isn't nothing). In general, for tanking I'd lean more toward Shigi's ninjutsu recast (Utsu, Migawari). [EDIT: derp, I also forgot Shigi's augmented stats have DT-5%, making it really good and a pretty clear offhand choice over an NQ Raicho]
NIN's MDT/BDT gear is mostly gonna be whatever all jobs DT- (or specifically MDT/BDT) pieces you can use, there's not much specific to NIN. Amm Greaves are one notable piece that doesn't get so much use on other jobs. DT-5% with max augments.
Otherwise, we're looking at stuff like:
* Typical all jobs DT rings (D.Ring, Dark Rings, Vocane, etc.)
* Multi-job DT neck/back (e.g. Loricate/Twilight necks, Solemnity Cape)
* Augmented DT Herculean gear works pretty well, gloves/legs also have base PDT-2% on them.
But really, if you expect to eat AoE nukes you should probably be thinking about getting a tank that isn't a NIN.
Quote:
7) Gear enmity supposedly caps at 200, can NIN reach that? Can you provide a max enmity set and are there any compromise pieces that have additional stats but also less enmity?
I seriously doubt NIN is hitting cap with any mix of gear (plus Yonin, +30 enmity at max strength). However, that's really not likely to be a gigantic concern. You're prob gonna be decent keeping hate as long as you can keep shadows up and spam flash from /RUN without thinking much about enmity other than tossing a few pieces into a flash set. It's the whole dying to AoE think that will get you.
Of course, Nagi also has Enmity+30. But yeah, I'm assuming most people aren't making a Mythic katana for tanking purposes, and it falls behind the other RMEA now for actual DD purposes.
Quote:
8) How important is a full spell interupt set for NIN and can they reach the cap easily? If so what is the spell interupt gear?
Not very important. Utsu: San is super fast and you can often go San to San anyway. Ni is fast too. If you're actually running into situations where interrupt- gear is meaningful... again, you really shouldn't be using a NIN tank.
Quote:
9) Have you tanked anything ilvl 135+ on NIN and if so what? Can you share your experiences/gear choices?
See above.
Quote:
10) How useful are the elemental resistance down aspects of ninjitsu for mana burn setups? I'm not expecting something like rayke which lowers mob family resistances but was it ever quantified how much macc it would add or how long it lasts?
I'd love to see someone answer this myself. It's definitely nothing on the level of Rayke, or even Quick Draw. But if somebody has tested, would be cool to see. Honestly, most people here have been more worried about casting same element as the mages and maximizing MB damage, this topic has been a bit NIN-nuke crazy as of late.